| 2013-06-10 Timothy Hatcher <timothy@apple.com> | |
| Remove Xcode 4 skin and only have the Xcode 5 look. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar .item.button.suppress-emboss.disabled > .glyph): | |
| * UserInterface/CodeMirrorOverrides.css: | |
| * UserInterface/DashboardView.css: | |
| (.toolbar .dashboard): | |
| (body.window-inactive .toolbar .dashboard): | |
| (.toolbar.collapsed .dashboard): | |
| (.toolbar.collapsed .dashboard > .logs): | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView): | |
| (WebInspector.DashboardView.prototype._setItemEnabled): | |
| * UserInterface/DetailsSection.css: | |
| * UserInterface/DividerNavigationItem.css: | |
| (.navigation-bar .item.divider): | |
| * UserInterface/FilterBar.css: | |
| (.filter-bar > input[type="search"]): | |
| (.filter-bar > input[type="search"]::-webkit-input-placeholder): | |
| (.filter-bar > input[type="search"]:valid): | |
| * UserInterface/FindBanner.css: | |
| (.find-banner > input[type="search"]): | |
| (.find-banner > button): | |
| * UserInterface/HierarchicalPathComponent.css: | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| * UserInterface/Main.css: | |
| (#split-content-browser > .navigation-bar): | |
| * UserInterface/NavigationBar.css: | |
| * UserInterface/NavigationSidebarPanel.css: | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| (.navigation-bar .item.radio.button.text-only.selected): | |
| * UserInterface/ResourceSidebarPanel.css: | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): | |
| * UserInterface/ScopeBar.css: | |
| (.scope-bar > li): | |
| (.scope-bar > li:active): | |
| (.scope-bar > li:hover): | |
| (.scope-bar > li.selected): | |
| * UserInterface/SearchBar.css: | |
| (.search-bar > input[type="search"]): | |
| (.search-bar > input[type="search"]::-webkit-input-placeholder): | |
| (.search-bar > input[type="search"]:valid): | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid > .navigation-bar-container > .navigation-bar): | |
| 2013-06-08 Timothy Hatcher <timothy@apple.com> | |
| Improve switching from the full view console to the Resource sidebar, so the previous resource is shown in the content browser again. | |
| Also cleans up my earlier changes and removes an assert that can fire often now. | |
| <rdar://problem/14075352> Jumping to a resource from the Timelines panel should reveal file in Resources sidebar when showing resource | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.showFullHeightConsole): | |
| (WebInspector._sidebarCollapsedStateDidChange): Call _updateNavigationSidebarForCurrentContentView for the navigation sidebar. | |
| (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar): Only do this work if the sidebar is not collapsed. We don't | |
| want to deselect items if the sidebar is collapsed, preserving the selection is important when showing the sidebar later. | |
| (WebInspector._updateNavigationSidebarForCurrentContentView): Added. Split off from _navigationSidebarPanelSelected. Only do this work | |
| if the sidebar is not collapsed. | |
| (WebInspector._navigationSidebarPanelSelected): Call _updateNavigationSidebarForCurrentContentView. | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): Clean up by returning early if there is no current content view. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): Remove an assert that can happen a lot now. | |
| 2013-06-07 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/14094308> Styles should come before Layers details sidebar | |
| Switch Layers and Styles. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2013-06-07 Timothy Hatcher <timothy@apple.com> | |
| Keep the selected tree element in sync with the current content view. | |
| <rdar://problem/14075352> Jumping to a resource from the Timelines panel should reveal file in Resources sidebar when showing resource | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector._revealAndSelectRepresentedObjectInNavigationSidebar): Added. | |
| (WebInspector._navigationSidebarPanelSelected): Call _revealAndSelectRepresentedObjectInNavigationSidebar. | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): Ditto. | |
| 2013-06-07 Timothy Hatcher <timothy@apple.com> | |
| Keep the navigation sidebar and the current content view in sync with a set of allowed sidebars per content view. | |
| <rdar://problem/14075352> Jumping to a resource from the Timelines panel should reveal file in Resources sidebar when showing resource | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get allowedNavigationSidebarPanels): Added. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.get allowedNavigationSidebarPanels): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.showSplitConsole): Show the navigation sidebar if it was showing. | |
| (WebInspector.showFullHeightConsole): Hide the navigation sidebar and remember if it was showing. | |
| (WebInspector.toggleConsoleView): Show the sidebar if it was showing. | |
| (WebInspector._navigationSidebarPanelSelected): Ensure the navigation sidebar panel is allowed by the current content view. | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): Ditto. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.showContentViewForCurrentSelection): | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): | |
| * UserInterface/ProfileView.js: | |
| (WebInspector.ProfileView.prototype.get allowedNavigationSidebarPanels): Added. | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype.get allowedNavigationSidebarPanels): Added. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.get allowedNavigationSidebarPanels): Added. | |
| 2013-06-06 Timothy Hatcher <timothy@apple.com> | |
| Properly filter into resources with a source map if they haven't been expanded yet. | |
| <rdar://problem/14072548> Resources filter shows "No Filter Results" after reload with SourceMaps | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Pass false to | |
| traverseNextTreeElement to cause the tree elements to be populated. This matches the interactive | |
| case when typing into the filter bar, which already worked with source maps. | |
| 2013-06-05 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/14077407> Jumping to an error in a JS file form the console highlights to white first before going back to red | |
| Remove the explicit ÒtoÓ color in the CSS animation we use to highlight a link | |
| in the text editor as it is revealed, which means the ÒtoÓ color will be the | |
| underlying color set on the element. This will animate to red for errors, | |
| yellow for warnings, and transparent for regular lines. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.css: | |
| (@-webkit-keyframes text-editor-highlight-fadeout): | |
| 2013-06-05 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/14077152> Activity viewer does not update error count for grouped errors when inspector is closed. | |
| Take into account the repeat count of an error when incrementing | |
| the message count. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager.prototype._consoleMessageAdded): | |
| (WebInspector.DashboardManager.prototype._consoleMessageWasRepeated): | |
| (WebInspector.DashboardManager.prototype._incrementConsoleMessageType): | |
| 2013-06-05 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14072409> Pressing Enter/Esc when editing a breakpoint (conditional breakpoint) should dismiss popover | |
| Handle Esc and Enter on the <input> to dismiss the popover. | |
| This behaves like Xcode's breakpoint condition popover. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype._popoverConditionInputKeyDown): | |
| (WebInspector.Breakpoint.prototype._editBreakpointPopoverContentElement): | |
| (WebInspector.Breakpoint.prototype._showEditBreakpointPopover): | |
| 2013-06-05 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14054886> Pressing Enter in a blank console should do nothing, not insert a newline | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ConsolePrompt.js: | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Add/update copyright and license to all the user interface files in | |
| preparation for open sourcing to WebKit. | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/ActivateButtonNavigationItem.js: | |
| * UserInterface/ActivateButtonToolbarItem.js: | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| * UserInterface/ApplicationCacheFrame.js: | |
| * UserInterface/ApplicationCacheFrameContentView.css: | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: | |
| * UserInterface/ApplicationCacheIcons.css: | |
| * UserInterface/ApplicationCacheManager.js: | |
| * UserInterface/ApplicationCacheManifest.js: | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: | |
| * UserInterface/ApplicationCacheObserver.js: | |
| * UserInterface/BinarySearch.js: | |
| * UserInterface/BlankStylePropertiesSection.js: | |
| * UserInterface/BottomUpProfileDataGridTree.js: | |
| * UserInterface/BoxModelDetailsSectionRow.css: | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| * UserInterface/Branch.js: | |
| * UserInterface/BranchManager.js: | |
| * UserInterface/Breakpoint.css: | |
| * UserInterface/Breakpoint.js: | |
| * UserInterface/BreakpointIcons.css: | |
| * UserInterface/BreakpointTreeElement.css: | |
| * UserInterface/BreakpointTreeElement.js: | |
| * UserInterface/ButtonNavigationItem.css: | |
| * UserInterface/ButtonNavigationItem.js: | |
| * UserInterface/ButtonToolbarItem.css: | |
| * UserInterface/ButtonToolbarItem.js: | |
| * UserInterface/CSSCompletions.js: | |
| * UserInterface/CSSKeywordCompletions.js: | |
| * UserInterface/CSSMedia.js: | |
| * UserInterface/CSSObserver.js: | |
| * UserInterface/CSSProperty.js: | |
| * UserInterface/CSSRule.js: | |
| * UserInterface/CSSSelectorProfileObject.js: | |
| * UserInterface/CSSSelectorProfileType.js: | |
| * UserInterface/CSSSelectorProfileView.js: | |
| * UserInterface/CSSStyleDeclaration.js: | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| * UserInterface/CSSStyleDeclarationSection.js: | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| * UserInterface/CSSStyleManager.js: | |
| * UserInterface/CSSStyleSheet.js: | |
| * UserInterface/CallFrame.js: | |
| * UserInterface/CallFrameIcons.css: | |
| * UserInterface/CallFrameTreeElement.js: | |
| * UserInterface/ClusterContentView.css: | |
| * UserInterface/ClusterContentView.js: | |
| * UserInterface/CodeMirrorAdditions.js: | |
| * UserInterface/CodeMirrorCompletionController.css: | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/CodeMirrorOverrides.css: | |
| * UserInterface/CodeMirrorTokenTrackingController.css: | |
| * UserInterface/CodeMirrorTokenTrackingController.js: | |
| * UserInterface/Color.js: | |
| * UserInterface/CompletionSuggestionsView.css: | |
| * UserInterface/CompletionSuggestionsView.js: | |
| * UserInterface/ComputedStyleDetailsPanel.js: | |
| * UserInterface/ConsoleCommand.js: | |
| * UserInterface/ConsoleCommandResult.js: | |
| * UserInterface/ConsoleGroup.js: | |
| * UserInterface/ConsoleMessage.js: | |
| * UserInterface/ConsoleMessageImpl.js: | |
| * UserInterface/ConsoleObserver.js: | |
| * UserInterface/ConsolePrompt.css: | |
| * UserInterface/ConsolePrompt.js: | |
| * UserInterface/ContentBrowser.css: | |
| * UserInterface/ContentBrowser.js: | |
| * UserInterface/ContentView.css: | |
| * UserInterface/ContentView.js: | |
| * UserInterface/ContentViewContainer.css: | |
| * UserInterface/ContentViewContainer.js: | |
| * UserInterface/ContextMenu.js: | |
| * UserInterface/ControlToolbarItem.css: | |
| * UserInterface/ControlToolbarItem.js: | |
| * UserInterface/CookieIcon.css: | |
| * UserInterface/CookieStorageContentView.css: | |
| * UserInterface/CookieStorageContentView.js: | |
| * UserInterface/CookieStorageObject.js: | |
| * UserInterface/CookieStorageTreeElement.js: | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| * UserInterface/DOMNode.js: | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| * UserInterface/DOMNodeStyles.js: | |
| * UserInterface/DOMObserver.js: | |
| * UserInterface/DOMSearchMatchObject.js: | |
| * UserInterface/DOMStorageContentView.css: | |
| * UserInterface/DOMStorageContentView.js: | |
| * UserInterface/DOMStorageIcons.css: | |
| * UserInterface/DOMStorageObject.js: | |
| * UserInterface/DOMStorageObserver.js: | |
| * UserInterface/DOMStorageTreeElement.js: | |
| * UserInterface/DOMTree.js: | |
| * UserInterface/DOMTreeContentView.css: | |
| * UserInterface/DOMTreeContentView.js: | |
| * UserInterface/DOMTreeElement.js: | |
| * UserInterface/DOMTreeElementPathComponent.js: | |
| * UserInterface/DOMTreeManager.js: | |
| * UserInterface/DOMTreeOutline.css: | |
| * UserInterface/DOMTreeOutline.js: | |
| * UserInterface/DOMTreeUpdater.js: | |
| * UserInterface/DOMUtilities.js: | |
| * UserInterface/DashboardManager.js: | |
| * UserInterface/DashboardView.css: | |
| * UserInterface/DashboardView.js: | |
| * UserInterface/DataGrid.css: | |
| * UserInterface/DataGrid.js: | |
| * UserInterface/DatabaseContentView.css: | |
| * UserInterface/DatabaseContentView.js: | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| * UserInterface/DatabaseIcon.css: | |
| * UserInterface/DatabaseObject.js: | |
| * UserInterface/DatabaseObserver.js: | |
| * UserInterface/DatabaseTableContentView.css: | |
| * UserInterface/DatabaseTableContentView.js: | |
| * UserInterface/DatabaseTableIcon.css: | |
| * UserInterface/DatabaseTableObject.js: | |
| * UserInterface/DatabaseTableTreeElement.js: | |
| * UserInterface/DatabaseTreeElement.js: | |
| * UserInterface/DebuggerManager.js: | |
| * UserInterface/DebuggerObserver.js: | |
| * UserInterface/DebuggerSidebarPanel.css: | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| * UserInterface/DetailsSection.css: | |
| * UserInterface/DetailsSection.js: | |
| * UserInterface/DetailsSectionDataGridRow.js: | |
| * UserInterface/DetailsSectionGroup.js: | |
| * UserInterface/DetailsSectionPropertiesRow.js: | |
| * UserInterface/DetailsSectionRow.js: | |
| * UserInterface/DetailsSectionSimpleRow.js: | |
| * UserInterface/DetailsSidebarPanel.css: | |
| * UserInterface/DetailsSidebarPanel.js: | |
| * UserInterface/DividerNavigationItem.css: | |
| * UserInterface/DividerNavigationItem.js: | |
| * UserInterface/Editing.css: | |
| * UserInterface/EditingSupport.js: | |
| * UserInterface/EventHandler.js: | |
| * UserInterface/EventListenerSection.js: | |
| * UserInterface/EventListenerSectionGroup.css: | |
| * UserInterface/EventListenerSectionGroup.js: | |
| * UserInterface/ExecutionContext.js: | |
| * UserInterface/ExecutionContextList.js: | |
| * UserInterface/FilterBar.css: | |
| * UserInterface/FilterBar.js: | |
| * UserInterface/FindBanner.css: | |
| * UserInterface/FindBanner.js: | |
| * UserInterface/FlexibleSpaceNavigationItem.css: | |
| * UserInterface/FlexibleSpaceNavigationItem.js: | |
| * UserInterface/FolderIcon.css: | |
| * UserInterface/FolderTreeElement.js: | |
| * UserInterface/FontResourceContentView.css: | |
| * UserInterface/FontResourceContentView.js: | |
| * UserInterface/Formatter.js: | |
| * UserInterface/FormatterContentBuilder.js: | |
| * UserInterface/FormatterSourceMap.js: | |
| * UserInterface/Frame.js: | |
| * UserInterface/FrameContentView.js: | |
| * UserInterface/FrameResourceManager.js: | |
| * UserInterface/FrameTreeElement.js: | |
| * UserInterface/GeneralTreeElement.js: | |
| * UserInterface/GeneralTreeElementPathComponent.js: | |
| * UserInterface/GenericResourceContentView.js: | |
| * UserInterface/Geometry.js: | |
| * UserInterface/HierarchicalPathComponent.css: | |
| * UserInterface/HierarchicalPathComponent.js: | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| * UserInterface/ImageResourceContentView.css: | |
| * UserInterface/ImageResourceContentView.js: | |
| * UserInterface/ImageUtilities.js: | |
| * UserInterface/IndeterminateProgressSpinner.css: | |
| * UserInterface/IndeterminateProgressSpinner.js: | |
| * UserInterface/InspectorBackend.js: | |
| * UserInterface/InspectorFrontendAPI.js: | |
| * UserInterface/InspectorObserver.js: | |
| * UserInterface/InstrumentIcons.css: | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| * UserInterface/IssueManager.js: | |
| * UserInterface/IssueMessage.js: | |
| * UserInterface/JavaScriptLogViewController.js: | |
| * UserInterface/JavaScriptProfileObject.js: | |
| * UserInterface/JavaScriptProfileType.js: | |
| * UserInterface/JavaScriptProfileView.css: | |
| * UserInterface/JavaScriptProfileView.js: | |
| * UserInterface/KeyboardShortcut.js: | |
| * UserInterface/LayerTreeDataGrid.js: | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| * UserInterface/LayerTreeManager.js: | |
| * UserInterface/LayerTreeObserver.js: | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| * UserInterface/LayoutTimelineDataGrid.js: | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| * UserInterface/LayoutTimelineRecord.js: | |
| * UserInterface/LoadInspectorBackendCommands.js: | |
| * UserInterface/LoadLocalizedStrings.js: | |
| * UserInterface/LogContentView.css: | |
| * UserInterface/LogContentView.js: | |
| * UserInterface/LogIcon.css: | |
| * UserInterface/LogManager.js: | |
| * UserInterface/LogObject.js: | |
| * UserInterface/LogTreeElement.js: | |
| * UserInterface/MIMETypeUtilities.js: | |
| * UserInterface/Main.css: | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| * UserInterface/MetricsStyleDetailsPanel.js: | |
| * UserInterface/NavigationBar.css: | |
| * UserInterface/NavigationBar.js: | |
| * UserInterface/NavigationItem.js: | |
| * UserInterface/NavigationSidebarPanel.css: | |
| * UserInterface/NavigationSidebarPanel.js: | |
| * UserInterface/NetworkDataGrid.css: | |
| * UserInterface/NetworkDataGrid.js: | |
| * UserInterface/NetworkGraphCalculator.js: | |
| * UserInterface/NetworkObserver.js: | |
| * UserInterface/NetworkTimeline.css: | |
| * UserInterface/Object.js: | |
| * UserInterface/ObjectPropertiesSection.js: | |
| * UserInterface/PageObserver.js: | |
| * UserInterface/PathComponentIcons.css: | |
| * UserInterface/Popover.css: | |
| * UserInterface/Popover.js: | |
| * UserInterface/ProfileManager.js: | |
| * UserInterface/ProfileObject.js: | |
| * UserInterface/ProfileType.js: | |
| * UserInterface/ProfileView.css: | |
| * UserInterface/ProfileView.js: | |
| * UserInterface/ProfilerObserver.js: | |
| * UserInterface/PropertiesSection.js: | |
| * UserInterface/QuickConsole.css: | |
| * UserInterface/QuickConsole.js: | |
| * UserInterface/QuickConsoleNavigationBar.js: | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| * UserInterface/Resource.js: | |
| * UserInterface/ResourceClusterContentView.js: | |
| * UserInterface/ResourceCollection.js: | |
| * UserInterface/ResourceContentView.js: | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| * UserInterface/ResourceIcons.css: | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| * UserInterface/ResourceSidebarPanel.css: | |
| * UserInterface/ResourceSidebarPanel.js: | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| * UserInterface/ResourceTimelineDataGridNodePathComponent.js: | |
| * UserInterface/ResourceTimelineRecord.js: | |
| * UserInterface/ResourceTreeElement.css: | |
| * UserInterface/ResourceTreeElement.js: | |
| * UserInterface/Revision.js: | |
| * UserInterface/RulesStyleDetailsPanel.css: | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| * UserInterface/RuntimeObserver.js: | |
| * UserInterface/ScopeBar.css: | |
| * UserInterface/ScopeBar.js: | |
| * UserInterface/ScopeBarItem.js: | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| * UserInterface/ScopeChainNode.js: | |
| * UserInterface/ScopeVariableTreeElement.js: | |
| * UserInterface/Script.js: | |
| * UserInterface/ScriptContentView.css: | |
| * UserInterface/ScriptContentView.js: | |
| * UserInterface/ScriptTimelineDataGrid.js: | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| * UserInterface/ScriptTimelineRecord.js: | |
| * UserInterface/ScriptTreeElement.js: | |
| * UserInterface/SearchBar.css: | |
| * UserInterface/SearchBar.js: | |
| * UserInterface/SearchIcons.css: | |
| * UserInterface/SearchResultTreeElement.js: | |
| * UserInterface/Section.css: | |
| * UserInterface/Section.js: | |
| * UserInterface/Setting.js: | |
| * UserInterface/Sidebar.css: | |
| * UserInterface/Sidebar.js: | |
| * UserInterface/SidebarPanel.js: | |
| * UserInterface/SourceCode.js: | |
| * UserInterface/SourceCodeLocation.js: | |
| * UserInterface/SourceCodePosition.js: | |
| * UserInterface/SourceCodeRevision.js: | |
| * UserInterface/SourceCodeTextEditor.css: | |
| * UserInterface/SourceCodeTextEditor.js: | |
| * UserInterface/SourceCodeTextRange.js: | |
| * UserInterface/SourceCodeTreeElement.js: | |
| * UserInterface/SourceMap.js: | |
| * UserInterface/SourceMapManager.js: | |
| * UserInterface/SourceMapResource.js: | |
| * UserInterface/SourceMapResourceTreeElement.js: | |
| * UserInterface/StorageManager.js: | |
| * UserInterface/StorageTreeElement.js: | |
| * UserInterface/StyleDetailsPanel.js: | |
| * UserInterface/StyleRuleIcons.css: | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| * UserInterface/TextContentView.css: | |
| * UserInterface/TextContentView.js: | |
| * UserInterface/TextEditor.css: | |
| * UserInterface/TextEditor.js: | |
| * UserInterface/TextRange.js: | |
| * UserInterface/TextResourceContentView.css: | |
| * UserInterface/TextResourceContentView.js: | |
| * UserInterface/TimelineDataGrid.css: | |
| * UserInterface/TimelineDataGrid.js: | |
| * UserInterface/TimelineDecorations.css: | |
| * UserInterface/TimelineDecorations.js: | |
| * UserInterface/TimelineEventMarker.js: | |
| * UserInterface/TimelineManager.js: | |
| * UserInterface/TimelineObserver.js: | |
| * UserInterface/TimelineOverview.css: | |
| * UserInterface/TimelineOverview.js: | |
| * UserInterface/TimelineRecord.js: | |
| * UserInterface/TimelinesContentView.css: | |
| * UserInterface/TimelinesContentView.js: | |
| * UserInterface/TimelinesObject.js: | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| * UserInterface/ToggleControlToolbarItem.js: | |
| * UserInterface/Toolbar.css: | |
| * UserInterface/Toolbar.js: | |
| * UserInterface/TreeOutline.js: | |
| * UserInterface/Utilities.js: | |
| * UserInterface/WebInspector.js: | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Properly update the boundaries for the NetworkTransferTimeCalculator. | |
| It is expected that _lowerBound and _upperBound return NaN instead of 0. | |
| <rdar://problem/14040314> Web Inspector says it takes ~15,000 days to load developer library | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype._updateHeaderTimes): | |
| * UserInterface/NetworkGraphCalculator.js: | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._lowerBound): | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._upperBound): | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Unlocalize the box model labels. | |
| <rdar://problem/14057745> [WebBrowser]: Euro: 13A476r: Box model should not be localized | |
| Reviewed by Ada Chan. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Syntax highlight inherit, initial and function names in CSS as keywords. | |
| Part of: <rdar://problem/14053613> "-webkit-transform" autocompletes with colon in -webkit-transition definition | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.propertyNamesCallback): | |
| Strip function parenthesis from names. Process the color list to strip function parenthesis from rgb(), etc. | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Improve the implicit suffix handling when editing in the middle of a CSS value. | |
| Part of: <rdar://problem/14053613> "-webkit-transform" autocompletes with colon in -webkit-transition definition | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): | |
| 2013-06-05 Timothy Hatcher <timothy@apple.com> | |
| Autocomplete property names for transition and transition-property. | |
| Part of: <rdar://problem/14053613> "-webkit-transform" autocompletes with colon in -webkit-transition definition | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.prototype.get values): | |
| * UserInterface/CSSKeywordCompletions.js: | |
| (WebInspector.CSSKeywordCompletions.forProperty): | |
| 2013-06-04 Timothy Hatcher <timothy@apple.com> | |
| Properly autocomplete CSS values if the property name is on a previous line. | |
| Part of: <rdar://problem/14053613> "-webkit-transform" autocompletes with colon in -webkit-transition definition | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): | |
| 2013-06-03 Timothy Hatcher <timothy@apple.com> | |
| Add property names to the value keywords list so they are highlighted for -webkit-transition. | |
| <rdar://problem/14052662> "-webkit-transform" is not correctly highlighted when editing CSS resource | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.collectPropertyNameForCodeMirror): | |
| 2013-06-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14047312> Add New Rules sometimes doesn't do anything | |
| Better handle generating selectors for nodes with spaces in class or id attributes. | |
| Tests: (Cases that were failing before) | |
| <div class=" x "> => Before: (..x.) After: (.x) | |
| <div id=" x "> => Before: (# x ) After: (div[id=" x "]) | |
| <div id='"x"'> => Before: (#"x") After: (div[id="\"x\""]) | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.appropriateSelectorFor): | |
| * UserInterface/DOMUtilities.js: | |
| (WebInspector.displayNameForNode): | |
| 2013-06-03 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13932229> Update CSSKeywordCompletions.js for iOS properties | |
| Add support for the new Ò-appleÓ-prefixed values for the ÒfontÓ property. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| 2013-06-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14047029> Exception CallFrameTreeElement.js:19: TypeError: 'null' is not an object (evaluating 'callFrame.sourceCodeLocation.displaySourceCode') | |
| Only include a subtitle for call frame tree elements if there is a | |
| source code location, because that is used to determine the subtitle. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| 2013-06-03 Timothy Hatcher <timothy@apple.com> | |
| Hide the caret in read-only style declarations. | |
| <rdar://problem/14047344> Locked rules (UA stylesheets) in Styles sidebar shouldn't display a caret | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor.read-only > .CodeMirror .CodeMirror-cursor): Added. | |
| 2013-06-03 Timothy Hatcher <timothy@apple.com> | |
| Correctly stop auto recording the Timeline after the load event or a maximum duration (which ever comes first). | |
| The original fix for <rdar://problem/13180009> was incorrect and caused <rdar://problem/13919974> | |
| and also caused infinite auto recording on pages with indefinite timers that rapidly adds records. | |
| <rdar://problem/14043180> REGRESSION (6.0.5-Curie): Safari Web Content: 100% CPU when using Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| Don't call _stopAutoRecordingSoon for the DOMContent event. | |
| (WebInspector.TimelineManager.prototype._addRecord): | |
| Don't call _stopAutoRecordingSoon. Add the call to _resetAutoRecordingDeadTimeTimeout back. | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): | |
| Use MaximumAutoRecordDuration instead of MaximumAutoRecordDurationAfterLastRecord for the timeout. | |
| (WebInspector.TimelineManager.prototype._stopAutoRecordingSoon): | |
| Remove the dead time timeout now that it is back in _addRecord. | |
| 2013-06-02 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14040519> BoxModelDetailsSectionRow.js:120: ERROR: TypeError: 'null' is not an object (evaluating 'style.propertyForName(width).value') | |
| Make the sidebar resilient against the possibility of an empty computed | |
| style object. The ultimate issue is that the DOM Tree does not have a | |
| selected node, but this could should be resilient anyways. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): | |
| 2013-06-02 Joseph Pecoraro <pecoraro@apple.com> | |
| Reveal line sometimes doesn't work with content right at the edge of the screen. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._isPositionVisible): | |
| 2013-05-31 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14039888> Should not have spellchecking during most HTML editing | |
| Allow EditingConfig to specify whether or not spellchecking should be enabled. | |
| Spellcheck is off by default, because most of the time it is code, and it is | |
| only enabled when editing a TextNode in the DOM Tree. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._startEditingTextNode): | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.EditingConfig): | |
| (.cleanUpAfterEditing): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14030289> Goto arrow from Timelines to autoformatted script not highlighting line correctly | |
| Previously the SourceCodeTextEditor was automatically formatting the | |
| content after the content was set on the TextEditor and some initial | |
| processing; such as revealing a pending position. This change lets | |
| the SourceCodeTextEditor signal to the TextEditor that it should | |
| automatically format the incoming string before the extra processing | |
| takes place. Now the pending position is updated in _prettyPrint, | |
| and revealed appropriately. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithContent): | |
| Move the auto formatting decision from didPopulate to willPopulate. | |
| If autoformatting is needed, we signal the TextEditor before setting | |
| the string. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set string.update): | |
| (WebInspector.TextEditor.prototype.set string): | |
| (WebInspector.TextEditor.prototype.set autoFormat): | |
| Keep a boolean for whether or not we should auto format when setting | |
| the string. When setting the string, format if needed, after clearing | |
| the history and before any pending position reveals. | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14030289> Goto arrow from Timelines to autoformatted script not highlighting line correctly | |
| Rename "revealLine" to "revealPosition". Now, if the first reveal is | |
| for a position in pretty printed code, it can be remapped to an | |
| appropriate (line, column), instead of whatever (line, 0) mapped to. | |
| There is one bug fix here, the _prettyPrint in TextEditor was | |
| incorrectly doing this._lineNumberToReveal.lineNumber, which should | |
| have just been this._lineNumberToReveal. However, this code was not | |
| getting reached in its current form. That will be addressed in the | |
| next part. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.showSourceCode): | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype.showResponse): | |
| (WebInspector.ResourceClusterContentView.prototype._resourceLoadingDidFinish): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeLocation): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalUnformattedSourceCodeLocation): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalOrFormattedSourceCodeLocation): | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeTextRange): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalOrFormattedSourceCodeTextRange): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.revealPosition): | |
| * UserInterface/TextContentView.js: | |
| (WebInspector.TextContentView.prototype.revealPosition): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set string.update): | |
| (WebInspector.TextEditor.prototype.set string): | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): | |
| (WebInspector.TextEditor.prototype.line): | |
| (WebInspector.TextEditor.prototype.updateLayout): | |
| (WebInspector.TextEditor.prototype._textRangeFromCodeMirrorPosition): | |
| (WebInspector.TextEditor.prototype._codeMirrorPositionFromTextRange): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.revealPosition): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14030289> Goto arrow from Timelines to autoformatted script not highlighting line correctly | |
| Add WebInspector.SourceCodePosition. Rather than passing lineNumber | |
| and columnNumber as separate parameters all over the place, we can | |
| pass a position object. Create positions as appropriate from other | |
| classes like SourceCodeLocation and TextRange. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.html: | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.position): | |
| (WebInspector.SourceCodeLocation.prototype.formattedPosition): | |
| (WebInspector.SourceCodeLocation.prototype.displayPosition): | |
| * UserInterface/SourceCodePosition.js: Added. | |
| (WebInspector.SourceCodePosition): | |
| (WebInspector.SourceCodePosition.prototype.get lineNumber): | |
| (WebInspector.SourceCodePosition.prototype.get columnNumber): | |
| * UserInterface/TextRange.js: | |
| (WebInspector.TextRange.prototype.startPosition): | |
| (WebInspector.TextRange.prototype.endPosition): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14030289> Goto arrow from Timelines to autoformatted script not highlighting line correctly | |
| Remove a reveal that always happens with line number 0. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.toggleConsoleView): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showMainFrameSourceCode): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| Unprefix uses of "-webkit-calc". | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14028576> Inspector finds CSS color names in other strings | |
| Be a little more picky with our CSS regex, and include some post-processing | |
| to act as a negative lookbehind, which is not supported in JavaScript regexes. | |
| Do not allow color names that are prefixed or post-fixed with '-' or '.'. | |
| Tests cases that previously would have produced swatches: | |
| url(gold.png); | |
| url("fools-gold.png"); | |
| url(fools.gold.png); | |
| Using a regex is of course an imperfect solution, but it covers the majority | |
| of cases and works well. It also allows us to detect colors in comments and | |
| provide color swatches for those. This allows us to filter out some more | |
| inappropriate cases. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14023649> No -webkit-filter autocompletion | |
| Add functions to CSS completion suggestions. When the completion | |
| suggestion is showing it has both parens, when committed, the cursor is | |
| placed inside the two parens so users can keep typing. | |
| This adds a bunch of common function completions. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13994485> Hovering element breadcrumbs should highlight element on page | |
| When hovering DOMTreeElementPathComponents highlight the associated | |
| node on the page, like when you hover the DOMTreeElement. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): | |
| (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseOver): | |
| (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseOut): | |
| Provide hooks for subclass mouseOver and mouseOut functions. | |
| * UserInterface/DOMTreeElementPathComponent.js: | |
| (WebInspector.DOMTreeElementPathComponent.prototype.get nextSibling): | |
| (WebInspector.DOMTreeElementPathComponent.prototype.mouseOver): | |
| (WebInspector.DOMTreeElementPathComponent.prototype.mouseOut): | |
| Implement the mouseOver and mouseOut to show / hide the DOM highlight. | |
| 2013-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14020206> Debugger popover not showing for "this" | |
| Allow popover for the keyword "this". | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CodeMirrorTokenTrackingController.js: | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression): | |
| 2013-05-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14007495> Web Inspector has "Instruments," but this is already a feature in Xcode | |
| Rename the "Instruments" Navigation Sidebar to "Timelines". Marketing | |
| had concerns about using the same name in multiple places. | |
| Rubber-stamped by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| 2013-05-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/14006550> Console errors persist when you navigate to other pages | |
| The console can clear in two ways, handle both events. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager): | |
| 2013-05-27 Timothy Hatcher <timothy@apple.com> | |
| Fix copy handeling for DataGrid. | |
| When text selection was disabled in r48866, that broke the copy event | |
| handlers for DataGrid. That change prevents focus from making a caret | |
| selection inside the DataGrid (it goes outside to the nearest selectable | |
| text). This broke bubbling of the copy event to the right elements. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): | |
| (WebInspector.DataGrid.prototype.handleBeforeCopyEvent): | |
| (WebInspector.DataGrid.prototype.handleCopyEvent): | |
| * UserInterface/Main.js: | |
| (WebInspector._beforecopy): | |
| (WebInspector._copy): | |
| 2013-05-27 Timothy Hatcher <timothy@apple.com> | |
| Allow data grid value column's in details sections wrap to multiple lines. | |
| <rdar://problem/12329905> Can't easily view long header values | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid tr.selected): | |
| (.data-grid:focus tr.selected): | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content .data-grid table.data): | |
| (.details-section > .content .data-grid tr:nth-child(even)): | |
| (.details-section > .content .data-grid tr:nth-child(odd)): | |
| (.details-section > .content .data-grid td.value-column): | |
| (.details-section > .content .data-grid td.value-column > div): | |
| 2013-05-27 Timothy Hatcher <timothy@apple.com> | |
| Only add event markers for the main frame. | |
| The event markers for frame heavy pages are too noisy and not very | |
| useful. We also didn't distinguish frames in the marker tooltips. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| 2013-05-26 Timothy Hatcher <timothy@apple.com> | |
| Stop using a CSS drop-shadow filter for the Web Inspector popover. | |
| Use the existing background canvas to draw the drop shadow instead. | |
| <rdar://problem/13991902> Stop using CSS filters for Popover | |
| This also fixes: | |
| <rdar://problem/13977466> Popover arrow is not perfectly centered with content | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Popover.css: | |
| (.popover): | |
| (.popover > .container): | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover.prototype._update): | |
| (WebInspector.Popover.prototype._drawBackground): | |
| (WebInspector.Popover.prototype._bestMetricsForEdge): | |
| 2013-05-25 Timothy Hatcher <timothy@apple.com> | |
| Show the popover after a delay so quickly arrowing down the grid does not flash the popover. | |
| Also prevent showing the popover if the element is hidden, which was happening sometimes for | |
| rows at the bottom which were marked as offscreen still. Put MIN_Y before MAX_X so the popover | |
| is more predictably positioned, and this matches NSPopover. Plus always clear the popover | |
| TreeOutline after giving the popover time to animate out when hiding. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid.prototype._dataGridSelectedNodeChanged): | |
| (WebInspector.TimelineDataGrid.prototype._showPopoverForSelectedNodeSoon.delayedWork): | |
| (WebInspector.TimelineDataGrid.prototype._showPopoverForSelectedNodeSoon): | |
| (WebInspector.TimelineDataGrid.prototype._hidePopover): | |
| (WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Show a highlight quad on the screen when selecting a Layout/Paint record. | |
| If we know the Quad / Rect of a Paint / Layout we can highlight that | |
| portion on the inspected page. Unfortunately this information is not | |
| very useful after the page scrolls, but it can be useful. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Geometry.js: | |
| (WebInspector.Quad.prototype.toProtocol): | |
| * UserInterface/LayoutTimelineDataGrid.js: | |
| (WebInspector.LayoutTimelineDataGrid): | |
| (WebInspector.LayoutTimelineDataGrid.prototype.reset): | |
| (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement): | |
| (WebInspector.LayoutTimelineDataGrid.prototype.hidden): | |
| (WebInspector.LayoutTimelineDataGrid.prototype._layoutDataGridSelectedNodeChanged): | |
| (WebInspector.LayoutTimelineDataGrid.prototype._hideHighlightIfNeeded): | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid.prototype.shown): | |
| (WebInspector.TimelineDataGrid.prototype.hidden): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.showTimelineForRecordType): | |
| (WebInspector.TimelinesContentView.prototype.shown): | |
| (WebInspector.TimelinesContentView.prototype.hidden): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12656683> Show whole JS stack for layout & rendering triggers | |
| Clear the popover's contents when the content view is reset so | |
| we don't leak anything held by the CallFrameTreeElements. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype.reset): | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid.prototype.reset): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12656683> Show whole JS stack for layout & rendering triggers | |
| Stack trace information is already available from the backend. Display | |
| it in a popover when the corresponding row in the data grid is selected. | |
| Users can then click a call frame to jump to that source code location. | |
| Because both Layout and Script timelines include call traces, this is | |
| made generic an put in TimelineDataGrid. Subclasses tell the superclass | |
| which element to anchor the popover next to, but the superclass handles | |
| showing the popover. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| Allow a CallFrameTreeElement for native code call frames. Such call | |
| frames don't have a source code location, so they have no subtitle. | |
| * UserInterface/Images/Native.pdf: Added. | |
| * UserInterface/CallFrameIcons.css: | |
| (.native-icon .icon): | |
| This is a duplicate of the DOMNode.pdf gray [N] icon. | |
| * UserInterface/Main.html: | |
| Include new files. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| * UserInterface/ScriptTimelineDataGrid.js: Added. | |
| (WebInspector.ScriptTimelineDataGrid): | |
| (WebInspector.ScriptTimelineDataGrid.prototype.callFramePopoverAnchorElement): | |
| * UserInterface/LayoutTimelineDataGrid.js: Added. | |
| (WebInspector.LayoutTimelineDataGrid): | |
| (WebInspector.LayoutTimelineDataGrid.prototype.callFramePopoverAnchorElement): | |
| Give each TimelineDataGrid subclass its own class. Implement only | |
| what is needed. The new subclasses provide the element for the | |
| superclass to anchor the call frame popover. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| Instantiate the specific DataGrid types. | |
| * UserInterface/TimelineDataGrid.css: Added. | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid): | |
| (WebInspector.TimelineDataGrid.prototype.callFramePopoverAnchorElement): | |
| (WebInspector.TimelineDataGrid.prototype._scopeBarSelectedItemsDidChange): | |
| (WebInspector.TimelineDataGrid.prototype._dataGridSelectedNodeChanged): | |
| (WebInspector.TimelineDataGrid.prototype._windowResized): | |
| (WebInspector.TimelineDataGrid.prototype._hidePopover): | |
| (WebInspector.TimelineDataGrid.prototype._updatePopoverForSelectedNode): | |
| Show and manager the popover. | |
| (WebInspector.TimelineDataGrid.prototype._createPopoverContent): | |
| (WebInspector.TimelineDataGrid.prototype._popoverCallStackTreeElementSelected): | |
| Popover content is a TreeOutline containing CallFrameTreeElements. | |
| When a call frame is selected, reveal the source code location. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.elementWithColumnIdentifier): | |
| Helper for accessing a specific <td> inside a <tr> by column name. | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Switch from "X" and "Y" to "Area" in the Layout Timeline | |
| For transformed paint rects an X, Y, Width and Height, didn't make | |
| sense, so the backend switched to quads. Instead of showing approximate | |
| values, like the bounding box, lets just remove unknowns and switch | |
| to showing the Area instead. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Restore Width and Height values for Layouts and Paints in Timeline | |
| The backend changed a while back from including rect values, to quad | |
| values. We should move away from X and Y and instead show Area. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Geometry.js: | |
| (WebInspector.Quad): | |
| Provide a wrapper object for the protocol Quad representation. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| Ingest new and old Layout and Paint timeline record. | |
| * UserInterface/LayoutTimelineRecord.js: | |
| (WebInspector.LayoutTimelineRecord): | |
| (WebInspector.LayoutTimelineRecord.prototype.get area): | |
| (WebInspector.LayoutTimelineRecord.prototype.get rect): | |
| (WebInspector.LayoutTimelineRecord.prototype.get quad): | |
| A record may be wrapping a quad. | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Use SourceCodeLocations when displaying Script locations. | |
| Using SourceCodeLocations allows the locations to show formatted | |
| and display locations and is therefore more accurate. It also shows | |
| the tooltip and display strings consistent with the rest of the UI. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/ScriptTimelineRecord.js: | |
| (WebInspector.ScriptTimelineRecord): | |
| (WebInspector.ScriptTimelineRecord.prototype.get lineNumber): | |
| (WebInspector.ScriptTimelineRecord.prototype.get callFrames): | |
| (WebInspector.ScriptTimelineRecord.prototype.get sourceCodeLocation): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Add Script Timeline records for Installing / Removing Timelines | |
| We had records for TimerFired but not install / remove. It is sometimes | |
| useful to see the stack traces where timers are added and removed. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ScriptTimelineRecord.js: | |
| (WebInspector.ScriptTimelineRecord.EventType.displayName): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| 2013-05-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove some unused old style DataGrid events. | |
| These events are not used anywhere, and we have a new style event. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.select): | |
| (WebInspector.DataGridNode.prototype.deselect): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| Turn off spellchecking on some text inputs. | |
| Reviewed by David Kilzer. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype._editBreakpointPopoverContentElement): | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): | |
| 2013-05-24 Timothy Hatcher <timothy@apple.com> | |
| Tag all Web Inspector images with copyright info. | |
| Added to all images: Copyright © 2013 Apple Inc. All rights reserved. | |
| Requested by Joyce Chow. | |
| * UserInterface/Images/ApplicationCache.png: | |
| * UserInterface/Images/ApplicationCache@2x.png: | |
| * UserInterface/Images/ApplicationCacheManifest.png: | |
| * UserInterface/Images/ApplicationCacheManifest@2x.png: | |
| * UserInterface/Images/BackArrow.pdf: | |
| * UserInterface/Images/BottomUpTree.pdf: | |
| * UserInterface/Images/Breakpoint.png: | |
| * UserInterface/Images/Breakpoint@2x.png: | |
| * UserInterface/Images/BreakpointButton.pdf: | |
| * UserInterface/Images/BreakpointInactive.png: | |
| * UserInterface/Images/BreakpointInactive@2x.png: | |
| * UserInterface/Images/BreakpointInactiveButton.pdf: | |
| * UserInterface/Images/ClippingCSS.png: | |
| * UserInterface/Images/ClippingCSS@2x.png: | |
| * UserInterface/Images/ClippingGeneric.png: | |
| * UserInterface/Images/ClippingGeneric@2x.png: | |
| * UserInterface/Images/ClippingJS.png: | |
| * UserInterface/Images/ClippingJS@2x.png: | |
| * UserInterface/Images/Close.pdf: | |
| * UserInterface/Images/Colors.png: | |
| * UserInterface/Images/Colors@2x.png: | |
| * UserInterface/Images/Cookie.png: | |
| * UserInterface/Images/Cookie@2x.png: | |
| * UserInterface/Images/Crosshair.pdf: | |
| * UserInterface/Images/DOMCharacterData.pdf: | |
| * UserInterface/Images/DOMComment.pdf: | |
| * UserInterface/Images/DOMDocument.pdf: | |
| * UserInterface/Images/DOMDocumentType.pdf: | |
| * UserInterface/Images/DOMElement.pdf: | |
| * UserInterface/Images/DOMNode.pdf: | |
| * UserInterface/Images/DOMTextNode.pdf: | |
| * UserInterface/Images/DOMTree.pdf: | |
| * UserInterface/Images/Database.png: | |
| * UserInterface/Images/Database@2x.png: | |
| * UserInterface/Images/DatabaseTable.png: | |
| * UserInterface/Images/DatabaseTable@2x.png: | |
| * UserInterface/Images/DisclosureTriangleSmallClosed.pdf: | |
| * UserInterface/Images/DisclosureTriangleSmallOpen.pdf: | |
| * UserInterface/Images/DisclosureTriangleTinyClosed.pdf: | |
| * UserInterface/Images/DisclosureTriangleTinyOpen.pdf: | |
| * UserInterface/Images/DockBottom.pdf: | |
| * UserInterface/Images/DockRight.pdf: | |
| * UserInterface/Images/DocumentCSS.png: | |
| * UserInterface/Images/DocumentCSS@2x.png: | |
| * UserInterface/Images/DocumentFont.png: | |
| * UserInterface/Images/DocumentFont@2x.png: | |
| * UserInterface/Images/DocumentGeneric.png: | |
| * UserInterface/Images/DocumentGeneric@2x.png: | |
| * UserInterface/Images/DocumentImage.png: | |
| * UserInterface/Images/DocumentImage@2x.png: | |
| * UserInterface/Images/DocumentJS.png: | |
| * UserInterface/Images/DocumentJS@2x.png: | |
| * UserInterface/Images/DocumentMarkup.png: | |
| * UserInterface/Images/DocumentMarkup@2x.png: | |
| * UserInterface/Images/Error.pdf: | |
| * UserInterface/Images/ErrorSmall.pdf: | |
| * UserInterface/Images/Errors.svg: | |
| * UserInterface/Images/ErrorsEnabled.svg: | |
| * UserInterface/Images/EventListener.pdf: | |
| * UserInterface/Images/Exception.pdf: | |
| * UserInterface/Images/FilterFieldGlyph.pdf: | |
| * UserInterface/Images/FolderGeneric.png: | |
| * UserInterface/Images/FolderGeneric@2x.png: | |
| * UserInterface/Images/ForwardArrow.pdf: | |
| * UserInterface/Images/Function.pdf: | |
| * UserInterface/Images/GoToArrow.pdf: | |
| * UserInterface/Images/HierarchicalNavigationItemChevron.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner1.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner10.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner11.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner12.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner2.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner3.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner4.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner5.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner6.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner7.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner8.pdf: | |
| * UserInterface/Images/IndeterminateProgressSpinner9.pdf: | |
| * UserInterface/Images/InstructionPointer.png: | |
| * UserInterface/Images/InstructionPointer@2x.png: | |
| * UserInterface/Images/Issues.svg: | |
| * UserInterface/Images/IssuesEnabled.svg: | |
| * UserInterface/Images/LayerBorders.pdf: | |
| * UserInterface/Images/LessColumns.pdf: | |
| * UserInterface/Images/LocalStorage.png: | |
| * UserInterface/Images/LocalStorage@2x.png: | |
| * UserInterface/Images/Locked.pdf: | |
| * UserInterface/Images/Log.png: | |
| * UserInterface/Images/Log@2x.png: | |
| * UserInterface/Images/Logs.svg: | |
| * UserInterface/Images/Memory.svg: | |
| * UserInterface/Images/MoreColumns.pdf: | |
| * UserInterface/Images/NavigationItemAngleBrackets.pdf: | |
| * UserInterface/Images/NavigationItemBrushAndRuler.pdf: | |
| * UserInterface/Images/NavigationItemBug.pdf: | |
| * UserInterface/Images/NavigationItemCurleyBraces.pdf: | |
| * UserInterface/Images/NavigationItemFile.pdf: | |
| * UserInterface/Images/NavigationItemLayers.pdf: | |
| * UserInterface/Images/NavigationItemLog.pdf: | |
| * UserInterface/Images/NavigationItemMagnifyingGlass.pdf: | |
| * UserInterface/Images/NavigationItemStopwatch.pdf: | |
| * UserInterface/Images/NavigationItemStorage.pdf: | |
| * UserInterface/Images/NavigationItemTrash.pdf: | |
| * UserInterface/Images/NavigationItemVariable.pdf: | |
| * UserInterface/Images/Network.png: | |
| * UserInterface/Images/Network@2x.png: | |
| * UserInterface/Images/NetworkBarBlue.png: | |
| * UserInterface/Images/NetworkBarBlue@2x.png: | |
| * UserInterface/Images/NetworkBarGray.png: | |
| * UserInterface/Images/NetworkBarGray@2x.png: | |
| * UserInterface/Images/NetworkBarGreen.png: | |
| * UserInterface/Images/NetworkBarGreen@2x.png: | |
| * UserInterface/Images/NetworkBarLabelCalloutLeft.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutRight.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteRight.pdf: | |
| * UserInterface/Images/NetworkBarOrange.png: | |
| * UserInterface/Images/NetworkBarOrange@2x.png: | |
| * UserInterface/Images/NetworkBarPurple.png: | |
| * UserInterface/Images/NetworkBarPurple@2x.png: | |
| * UserInterface/Images/NetworkBarRed.png: | |
| * UserInterface/Images/NetworkBarRed@2x.png: | |
| * UserInterface/Images/NetworkBarWhiteFlat.png: | |
| * UserInterface/Images/NetworkBarWhiteFlat@2x.png: | |
| * UserInterface/Images/NetworkBarYellow.png: | |
| * UserInterface/Images/NetworkBarYellow@2x.png: | |
| * UserInterface/Images/NetworkHollowBarBlue.png: | |
| * UserInterface/Images/NetworkHollowBarBlue@2x.png: | |
| * UserInterface/Images/NetworkHollowBarGray.png: | |
| * UserInterface/Images/NetworkHollowBarGray@2x.png: | |
| * UserInterface/Images/NetworkHollowBarGreen.png: | |
| * UserInterface/Images/NetworkHollowBarGreen@2x.png: | |
| * UserInterface/Images/NetworkHollowBarOrange.png: | |
| * UserInterface/Images/NetworkHollowBarOrange@2x.png: | |
| * UserInterface/Images/NetworkHollowBarPurple.png: | |
| * UserInterface/Images/NetworkHollowBarPurple@2x.png: | |
| * UserInterface/Images/NetworkHollowBarRed.png: | |
| * UserInterface/Images/NetworkHollowBarRed@2x.png: | |
| * UserInterface/Images/NetworkHollowBarYellow.png: | |
| * UserInterface/Images/NetworkHollowBarYellow@2x.png: | |
| * UserInterface/Images/Pause.pdf: | |
| * UserInterface/Images/Percent.pdf: | |
| * UserInterface/Images/Plus.pdf: | |
| * UserInterface/Images/Profile.png: | |
| * UserInterface/Images/Profile@2x.png: | |
| * UserInterface/Images/PseudoElement.pdf: | |
| * UserInterface/Images/Recording.png: | |
| * UserInterface/Images/Recording@2x.png: | |
| * UserInterface/Images/RecordingHovered.png: | |
| * UserInterface/Images/RecordingHovered@2x.png: | |
| * UserInterface/Images/RecordingStopped.png: | |
| * UserInterface/Images/RecordingStopped@2x.png: | |
| * UserInterface/Images/Reflection.pdf: | |
| * UserInterface/Images/Reload.svg: | |
| * UserInterface/Images/ReloadSelected.svg: | |
| * UserInterface/Images/Request.pdf: | |
| * UserInterface/Images/Resources.svg: | |
| * UserInterface/Images/Response.pdf: | |
| * UserInterface/Images/ResultLine.pdf: | |
| * UserInterface/Images/Resume.pdf: | |
| * UserInterface/Images/Script.png: | |
| * UserInterface/Images/Script@2x.png: | |
| * UserInterface/Images/SessionStorage.png: | |
| * UserInterface/Images/SessionStorage@2x.png: | |
| * UserInterface/Images/ShadowDOM.pdf: | |
| * UserInterface/Images/SortIndicatorDownArrow.pdf: | |
| * UserInterface/Images/SortIndicatorUpArrow.pdf: | |
| * UserInterface/Images/SourceCode.pdf: | |
| * UserInterface/Images/SplitToggleDown.pdf: | |
| * UserInterface/Images/SplitToggleUp.pdf: | |
| * UserInterface/Images/StepInto.pdf: | |
| * UserInterface/Images/StepOut.pdf: | |
| * UserInterface/Images/StepOver.pdf: | |
| * UserInterface/Images/Stopwatch.png: | |
| * UserInterface/Images/Stopwatch@2x.png: | |
| * UserInterface/Images/StyleRuleAuthor.pdf: | |
| * UserInterface/Images/StyleRuleInherited.pdf: | |
| * UserInterface/Images/StyleRuleInheritedElement.pdf: | |
| * UserInterface/Images/StyleRuleInspector.pdf: | |
| * UserInterface/Images/StyleRuleUser.pdf: | |
| * UserInterface/Images/StyleRuleUserAgent.pdf: | |
| * UserInterface/Images/Time.svg: | |
| * UserInterface/Images/TimelineBarBlue.png: | |
| * UserInterface/Images/TimelineBarBlue@2x.png: | |
| * UserInterface/Images/TimelineBarOrange.png: | |
| * UserInterface/Images/TimelineBarOrange@2x.png: | |
| * UserInterface/Images/TimelineBarPurple.png: | |
| * UserInterface/Images/TimelineBarPurple@2x.png: | |
| * UserInterface/Images/Undock.pdf: | |
| * UserInterface/Images/UpDownArrows.svg: | |
| * UserInterface/Images/UserInputPrompt.pdf: | |
| * UserInterface/Images/UserInputPromptPrevious.pdf: | |
| * UserInterface/Images/UserInputPromptPreviousSelected.pdf: | |
| * UserInterface/Images/UserInputResult.pdf: | |
| * UserInterface/Images/UserInputResultSelected.pdf: | |
| * UserInterface/Images/Warning.pdf: | |
| * UserInterface/Images/WarningSmall.pdf: | |
| * UserInterface/Images/Weight.svg: | |
| 2013-05-24 Timothy Hatcher <timothy@apple.com> | |
| Workaround an error with minifying the Web Inspector. | |
| jsmin.py does not like: return //.test(); | |
| <rdar://problem/13983475> REGRESSION(r51583): Cannot show web inspector in recent spades | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| (window.CodeMirror): | |
| 2013-05-23 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror from 3.12 to 3.13. | |
| Include the new comment.js addon and hook it up to Command-/. | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/update-codemirror-resources.rb: Added comment.js. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| * UserInterface/External/CodeMirror/clojure.js: | |
| * UserInterface/External/CodeMirror/codemirror.css: | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| * UserInterface/External/CodeMirror/coffeescript.js: | |
| * UserInterface/External/CodeMirror/comment.js: Added. | |
| * UserInterface/External/CodeMirror/css.js: | |
| * UserInterface/External/CodeMirror/javascript.js: | |
| * UserInterface/External/CodeMirror/less.js: | |
| * UserInterface/External/CodeMirror/placeholder.js: | |
| * UserInterface/External/CodeMirror/runmode.js: | |
| * UserInterface/External/CodeMirror/sass.js: | |
| * UserInterface/External/CodeMirror/searchcursor.js: | |
| * UserInterface/External/CodeMirror/sql.js: | |
| * UserInterface/External/CodeMirror/xml.js: | |
| * UserInterface/Main.html: Include comment.js. | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13972577> ER: when deleting break points on a file, don't move up if you can't delete | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineDeleteTreeElement): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| Don't implicitly preventDefault with the keyboard shortcut. This allows the | |
| default behavior of populating the system find pasteboard. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| Pass the "changeFocus" parameter through the internal cursor relative reveal functions. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.revealPreviousSearchResult): | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultBeforeCursor): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultAfterCursor): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| Instead of continuing the binary search when we encounter an invalid entry, | |
| just break out immediately. This way we can revalidate all of the search results | |
| and accurately search forward or back. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._binarySearchInsertionIndexInSearchResults): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultBeforeCursor): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultAfterCursor): | |
| (WebInspector.TextEditor.prototype._cursorDoesNotMatchLastRevealedSearchResult): | |
| (WebInspector.TextEditor.prototype._revalidateSearchResults): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| Clear the automaticallyRevealFirstSearchResult state after revealing a search term. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| When searching forwards and backwards search relative to the current cursor position. | |
| If we were already on a particular result we can keep the old path and just move | |
| forward / back in the result list. Otherwise we binary search the closest position | |
| to the cursor. Because results can be removed in the search path we have a | |
| bit of added complexity. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set automaticallyRevealFirstSearchResult): | |
| (WebInspector.TextEditor.prototype.addSearchResults.markRanges): | |
| When automatically revealing, do so relative to the cursor. | |
| (WebInspector.TextEditor.prototype.revealPreviousSearchResult): | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): | |
| (WebInspector.TextEditor.prototype._cursorDoesNotMatchLastRevealedSearchResult): | |
| If we don't have a search result index, or if the cursor moved off | |
| of the last search result index, search relative to the cursor. | |
| (WebInspector.TextEditor.prototype._comparePositions): | |
| (WebInspector.TextEditor.prototype._binarySearchInsertionIndexInSearchResults): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultBeforeCursor): | |
| (WebInspector.TextEditor.prototype._revealFirstSearchResultAfterCursor): | |
| Binary search search results handling the possibility that a search result | |
| could be null. I'm not sure if this works perfectly in such cases, but | |
| it worked fine in practice. | |
| (WebInspector.TextEditor.prototype._revalidateSearchResults): | |
| When we try to traverse to a search result and it was deleted, revalidate | |
| all the search results. This can happen if in a CSS file and the user | |
| deleted some instances of a search result. | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/7545262> Command-E should put selected text in the search box | |
| Step 1, make Command+E populate the FindBanner's search query, and silently | |
| perform the search so that Command+G and Shift+Command+G work. Expose a | |
| new ContentView method "searchQueryWithSelection" to get a search query | |
| from the selection in that ContentView. This currently only works with | |
| TextEditor ContentViews. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): Add the keyboard shortcut. | |
| (WebInspector.FindBanner.prototype._populateSearchQueryFromSelection): | |
| Ask the delegate (ContentBrowser) for a search query from selection. | |
| If we get one, silently perform a search. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.searchQueryWithSelection): | |
| Get the selection from CodeMirror and return that. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.searchQueryWithSelection): | |
| Default implementation returns null, meaning no change. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.searchQueryWithSelection): | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.findBannerSearchQueryForSelection): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.searchQueryWithSelection): | |
| * UserInterface/TextContentView.js: | |
| (WebInspector.TextContentView.prototype.searchQueryWithSelection): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.searchQueryWithSelection): | |
| Plumbing the message down the content views heirarchy. | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove unnecessary return for setter. | |
| This was just a copy / paste error from when it was originally written. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| 2013-05-23 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove unused instance variable TextEditor._pendingSearchResultLineNumbers | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| 2013-05-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13961791> Stopping recording clears the timeline | |
| It actually seems like a non-main frame resource change causes the | |
| timeline to clear. Only clear on main frame main resource changes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype._mainResourceDidChange): | |
| 2013-05-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12837326> REGRESSION: Content just displays a spinner when it stops on a breakpoint during load | |
| When a BreakpointTreeElement is selected and the page is reloaded the | |
| breakpoint tree elements are removed. When removing the tree element | |
| the parent, ResourceTreeElement, was selected and the tree outline | |
| created a content view to show for that resource. This content view | |
| was being orphaned and replaced when new resources were loaded. | |
| We never want to create a content view for a Script/ResourceTreeElement | |
| in the DebuggerSidebarPanel when it has no children. That is a sign | |
| that the tree element is about to be deleted. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| 2013-05-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12837326> REGRESSION: Content just displays a spinner when it stops on a breakpoint during load | |
| Prevent the populate with script content path from requesting content | |
| multiple times. This is just an optimization to prevent duplicated work. | |
| This can happen the first time the debugger is paused, by setting the | |
| active call frame, opening the resource, and then triggering the active | |
| call frame did change notification. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable): | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent): | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent): | |
| 2013-05-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12837326> REGRESSION: Content just displays a spinner when it stops on a breakpoint during load | |
| On iOS 6, when associating a Script with a Resource also update the type | |
| to be Script, that way the resource will get a TextResourceContentView | |
| instead of a GeneralResourceContentView and fall into the existing path | |
| that will fetch Script Source for an editor when it is on a breakpoint | |
| and cannot load the resource content. | |
| Also, replace instances of "scriptsForResource" with the new scripts | |
| accessor on WebInspector.Resource. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode): | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.associateWithScript): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): | |
| 2013-05-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12837326> REGRESSION: Content just displays a spinner when it stops on a breakpoint during load | |
| Never loading content while on a breakpoint is possible in scripts if | |
| the backend is paused executing the script before it has sent the | |
| frontend information that the resource has finished loading. In these | |
| cases, it is still possible for the frontend to get the "script source" | |
| instead of the "resource content". These patches do that. | |
| Start by creating an association between WebInspector.Resource and | |
| WebInspector.Script. The order of events is always such that the Resource | |
| is created first: | |
| - Network.requestWillBeSent => create WebInspector.Resource | |
| - Debugger.scriptParsed => create WebInspector.Script | |
| So associate a Script with a Resource, if there is one, when the Script | |
| is created. Currently we can only create the association with URLs, | |
| which is not perfect if resources have the same URL but different | |
| contents. That has never worked perfectly. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Script.js: | |
| (WebInspector.Script): | |
| (WebInspector.Script.prototype.get resource): | |
| (WebInspector.Script.prototype.requestContentFromBackend): | |
| (WebInspector.Script.prototype._resolveResource): | |
| On creation associate with a Resource via URL. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get scripts): | |
| (WebInspector.Resource.prototype.associateWithScript): | |
| Allow a Script to associate with this resource. | |
| * UserInterface/FrameResourceManager.js: | |
| Remove "resourceForScript". Script's now have a resource property. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded): | |
| * UserInterface/Main.js: | |
| (WebInspector.linkifyLocation): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointToggled): | |
| * UserInterface/SourceMapManager.js: | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSucceeded): | |
| Refactor to the simpler script.resource. | |
| 2013-05-21 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove generic event listeners when ClusterContentViews are closed. | |
| Some event listeners were removed, but not all. This would have | |
| caused the cluster content views to be leaked. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.closed): | |
| 2013-05-21 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove the concept of left and right navigation items. | |
| They are unused. So just remove them. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): | |
| 2013-05-22 Timothy Hatcher <timothy@apple.com> | |
| Fix auto complete property caching. | |
| <rdar://problem/13961832> Autocomplete of function return value causes side-effects multiple times | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| 2013-05-21 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13948862> REGRESSION (r150395): Sticky headers are mis-positioned | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header): | |
| (.details-section .details-section > .header): | |
| Position and layer the headers correctly such that they snap to | |
| the right position when scrolling. | |
| * UserInterface/Main.js: | |
| (WebInspector.updateDockedState): | |
| (WebInspector._toolbarDisplayModeDidChange): | |
| (WebInspector._toolbarSizeModeDidChange): | |
| Remove unnecessary code now that sticky-positioned elements behave | |
| as expected in Òoverflow: scrollÓ elements. | |
| 2013-05-21 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13941438> Debugger popovers should prefer placement to the bottom/right over left to not cover expression | |
| Reviewed by Timothy Hatcher. | |
| Let Popover.present() be provided with a list of preferred edges in order | |
| of preference and let the source code popovers prefer layout above, below and on | |
| the right, in this order. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype._showEditBreakpointPopover): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updatePopoverForSelectedNode): | |
| Adopt new Popover.present() parameter type. | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover): | |
| (WebInspector.Popover.prototype.present): | |
| Rename ÒpreferredEdgeÓ to ÒpreferredEdgesÓ (plural). | |
| (WebInspector.Popover.prototype._update): | |
| Instead of gathering metrics sorted by keys, gather them sorted in the | |
| order of preference provided by the ÒpreferredEdgesÓ argument. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| Adopt new Popover.present() parameter type and provide the desired list | |
| of preferred edges in order. | |
| 2013-05-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13945892> Console messages not working with iOS 6 | |
| Reviewed by Timothy Hatcher. | |
| Don't use the enums right now. They were not generated for the iOS 6 | |
| InspectorBackend commands file. In the future we should generate it | |
| for Legacy systems as well as trunk, and use constants instead of | |
| magic values in code. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): | |
| 2013-05-19 Timothy Hatcher <timothy@apple.com> | |
| Prevent selection and deselect all messages when clicking disclosure triangles in the console. | |
| This mostly worked before, but if a selection did happen it wouldn't go away by itself. Now | |
| it will go away if a disclosure triangle is clicked. Also the initial focus mouse down always | |
| selected the row, now it does not. | |
| <rdar://problem/13839762> REGRESSION: When inspecting an object in the console, the entire object becomes highlighted | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup.prototype.addMessage): | |
| (WebInspector.ConsoleGroup.prototype._titleMouseDown): Added. | |
| (WebInspector.ConsoleGroup.prototype._titleClicked): | |
| Don't select a group row when the title is clicked. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._onmousedown): | |
| Prevent default instead of stopping propagation. | |
| * UserInterface/LogContentView.css: | |
| (.outline-disclosure li.parent::before): | |
| Drive by disclosure triangle position tweak. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| Check for defaultPrevented and deselect all messages. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.treeElementMouseDown): | |
| Prevent default instead of stopping propagation. | |
| 2013-05-19 Timothy Hatcher <timothy@apple.com> | |
| Fix the issue where console logs would overlap on reload. | |
| Rejigger the console elements so the flex element can grow to fit and the parent does the scrolling. | |
| <rdar://problem/13932826> REGRESSION (r147261): Reloading page causes overlapping console logs (116404) | |
| Reviewed by Antoine Quint. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype.isScrolledToBottom): | |
| (WebInspector.JavaScriptLogViewController.prototype.scrollToBottom.delayedWork): | |
| (WebInspector.JavaScriptLogViewController.prototype.scrollToBottom): | |
| * UserInterface/LogContentView.css: | |
| (.content-view.log): | |
| (.console-messages): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.updateLayout): | |
| (WebInspector.LogContentView.prototype.get scrollableElements): | |
| (WebInspector.LogContentView.prototype._ensureMessageIsVisible): | |
| (WebInspector.LogContentView.prototype._positionForMessage): | |
| 2013-05-18 Timothy Hatcher <timothy@apple.com> | |
| Make prefixed keywords syntax highlight correctly. | |
| CodeMirror parses the vendor prefix separate from the property or keyword name, | |
| so we need to strip vendor prefixes from our all our names, not just properties. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.nameForCodeMirror): | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.collectPropertyNameForCodeMirror): | |
| 2013-05-18 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13774412> Update CSSKeywordCompletions.js for Curie + iOS | |
| This is a pretty mechanical update to CSS autocompletion suggestions. | |
| Also fix suggestions not working for "-webkit-" properties. | |
| Most of this list was manually generated by looking at specifications | |
| and walking CSSParser::parseValue, isValidKeywordPropertyAndValue, | |
| CSSProperty::isInheritedProperty, the related .in files, and a bit | |
| of sleuthing. It is not meant to be perfect, webkit differs from | |
| specs slightly and doesn't implement all properties, but it does | |
| a better job than before. | |
| Rubber-stamped by Timothy Hatcher. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| (WebInspector.CSSKeywordCompletions.forProperty): | |
| 2013-05-17 Timothy Hatcher <timothy@apple.com> | |
| Drop -webkit- prefixes from CSS properties that no longer require them. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| * UserInterface/CodeMirrorOverrides.css: | |
| * UserInterface/DOMTreeOutline.css: | |
| * UserInterface/Editing.css: | |
| * UserInterface/LogContentView.css: | |
| * UserInterface/Main.css: | |
| * UserInterface/NavigationSidebarPanel.css: | |
| * UserInterface/Section.css: | |
| * UserInterface/TimelinesContentView.css: | |
| 2013-05-17 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13919974> 11A368: Instruments tab of RWI is almost empty when loading apple.com on device | |
| Fix a typo in the constant name. It was using a non-existent constant | |
| which resulted in a 0ms timeout instead of the intended 15s. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): | |
| 2013-05-16 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13917982> Inconsistency between right-clicking and control-clicking in Debugger gutter | |
| Ignore "Ctrl + Left Click" in more places: | |
| * in drag / resize scenarios | |
| * text editor gutter on a breakpoint | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._startResizerDragging): | |
| (WebInspector.DataGrid.prototype._resizerDragging): | |
| (WebInspector.DataGrid.prototype._endResizerDragging): | |
| * UserInterface/Main.js: | |
| (WebInspector._dockedResizerMouseDown.dockedResizerDrag): | |
| (WebInspector._dockedResizerMouseDown.dockedResizerDragEnd): | |
| (WebInspector._dockedResizerMouseDown): | |
| (WebInspector._moveWindowMouseDown.toolbarDrag): | |
| (WebInspector._moveWindowMouseDown.toolbarDragEnd): | |
| (WebInspector._moveWindowMouseDown): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype._resizerMouseDown): | |
| (WebInspector.Sidebar.prototype._resizerMouseUp): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._gutterMouseDown): | |
| 2013-05-17 Timothy Hatcher <timothy@apple.com> | |
| Make clicking completions work again in the Style details sidebar. | |
| <rdar://problem/13919341> REGRESSION: Mouse clicking a CSS autocompletion suggestion no longer works | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._editorBlured): | |
| Clicking a suggestion causes the editor to blur. We don't want to reset content in this case. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype.isHandlingClickEvent): Added. | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): Use this.isHandlingClickEvent(). | |
| 2013-05-16 Timothy Hatcher <timothy@apple.com> | |
| Reset the branches when the main frame navigates. | |
| This makes sure the SourceCodeRevisions don't stick around between page loads and take up memory. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BranchManager.js: | |
| (WebInspector.BranchManager): | |
| (WebInspector.BranchManager.prototype.initialize): | |
| (WebInspector.BranchManager.prototype.deleteBranch): | |
| (WebInspector.BranchManager.prototype._mainResourceDidChange): | |
| 2013-05-16 Timothy Hatcher <timothy@apple.com> | |
| Some random style tweaks. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| (.style-declaration-section > .header): Smaller top margin to align with the icon better. | |
| * UserInterface/CodeMirrorOverrides.css: | |
| (.CodeMirror .CodeMirror-gutters): Lighter border color to match Xcode 5. | |
| 2013-05-16 Timothy Hatcher <timothy@apple.com> | |
| Fix a case where we would enter an infinite loop, consuming memory and hang. | |
| <rdar://problem/13911608> REGRESSION (r50998): Massive memory growth and hanging (115811) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.updateForRedirectResponse): | |
| (WebInspector.Resource.prototype.updateForResponse): | |
| (WebInspector.Resource.prototype.increaseSize): | |
| (WebInspector.Resource.prototype.markAsFinished): | |
| (WebInspector.Resource.prototype.markAsFailed): | |
| Timestamps are expected to be NaN instead of null. This wasn't an issue before because | |
| the timeline code didn't use these timestamps. Now Resource.firstTimestamp uses them, | |
| which is used by ResourceTimelineRecord.startTime. | |
| 2013-05-15 Timothy Hatcher <timothy@apple.com> | |
| Allow Command-K to clear the console anywhere in the Inspector. | |
| <rdar://problem/13888241> Command-K doesn't clear the Console unless it has focus | |
| Reviewed by Antoine Quint. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| 2013-05-15 Timothy Hatcher <timothy@apple.com> | |
| Fix the Save As... keyboard shortcut. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| Don't require the Option key. It is Command-Shift-S. | |
| 2013-05-15 Timothy Hatcher <timothy@apple.com> | |
| Make clicking the console icons in the dashboard toggle the scope. | |
| <rdar://problem/13884713> Improve console filtering via the dashboard buttons | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.showFullHeightConsole): | |
| If the requested scope is already selected and the console is showing, then switch back to All. | |
| 2013-05-15 Timothy Hatcher <timothy@apple.com> | |
| Make the tab key commit the completion of there is only one suggestion. | |
| <rdar://problem/13897001> REGRESSION (Safari 6): Tab to accept autocomplete with 1 result | |
| should dismiss completion suggestions popover | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleTabKey): | |
| Commit the current completion if there is only one suggestion. | |
| 2013-05-14 Timothy Hatcher <timothy@apple.com> | |
| Always evaluate the console prompt if the cursor is not at the last position. | |
| <rdar://problem/13854691> New Return key behavior in Web Inspector breaks my typical usage | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt.prototype._handleEnterKey): | |
| * UserInterface/JavaScriptLogViewController.js: | |
| 2013-05-14 Timothy Hatcher <timothy@apple.com> | |
| Update Frame.securityOrigin when committing the provisional load. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): | |
| 2013-05-14 Timothy Hatcher <timothy@apple.com> | |
| Add DOMStorage when the main resource changes. | |
| <rdar://problem/13844066> REGRESSION: If the Web Inspector is displayed when you refresh the page, local and session storage is not visible | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager.prototype._mainResourceDidChange): | |
| (WebInspector.StorageManager.prototype._addDOMStorageIfNeeded): | |
| (WebInspector.StorageManager.prototype._securityOriginDidChange): | |
| 2013-05-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13876379> Pretty printing while paused in the debugger loses the execution line | |
| When pretty printing we replace the entire contents of the editor. If | |
| the display location didn't change at all, then when we re-set the | |
| execution line number, we wouldn't update the style on the line. | |
| This change makes updating the execution line more of the TextEditor's | |
| responsibility on a pretty print. Previously it was working in most cases | |
| but now it should always work as long as the TextEditor has been given | |
| an accurate execution line and column number. In pretty print we delete | |
| the execution line handle so we are guaranteed to recreate it. | |
| Just in case, also update SourceCodeLocation to listen to any location | |
| changes, not just display location changes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.close): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameSourceCodeLocationChanged): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get executionColumnNumber): | |
| (WebInspector.TextEditor.prototype.set executionColumnNumber): | |
| 2013-05-13 Timothy Hatcher <timothy@apple.com> | |
| Fix the shortcut for the Layer details sidebar panel. | |
| Also fix the naming of the toolbar buttons for the Style details sidebar and | |
| Layer details sidebar so they are plural while the name in the tooltip is still singular. | |
| <rdar://problem/13871872> Layers details sidebar shortcut should be control-shift-4, not control-shift-5 | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel): | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| * UserInterface/DetailsSidebarPanel.js: | |
| (WebInspector.DetailsSidebarPanel): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel): | |
| 2013-05-13 Timothy Hatcher <timothy@apple.com> | |
| Tweak the console completions to work as expected in more cases. | |
| Also prevent empty prefix completions unless it is the start of property access. | |
| This was a regression from the fix for <rdar://problem/13860627>. | |
| <rdar://problem/13871885> Command-line API functions don't autocomplete when passed as parameter | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt.prototype.completionControllerCompletionsNeeded): | |
| * UserInterface/JavaScriptLogViewController.js: | |
| 2013-05-12 Timothy Hatcher <timothy@apple.com> | |
| Update the toolbar height so the save sheet is positioned correctly and window gradient is accurate. | |
| <rdar://problem/13871067> Save sheet on the Web Inspector does not come out from under the toolbar | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector.updateDockedState): | |
| (WebInspector._updateToolbarHeight): | |
| (WebInspector._toolbarDisplayModeDidChange): | |
| (WebInspector._toolbarSizeModeDidChange): | |
| 2013-05-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Improve String.prototype.startsWith to not search the entire string. | |
| Using the optional second parameter of lastIndexOf we can only search | |
| for a substring from index 0, and not check the rest of the string. | |
| I also went through and replaced all uses of str.indexOf(...) === 0 with | |
| str.startsWith(...), or if a single character str.charAt(0) === "?". | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.prototype.startsWith): | |
| (WebInspector.CSSCompletions.prototype._firstIndexOfPrefix): | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.cookieMatchesResourceURL): | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._buildAttributeDOM): | |
| * UserInterface/EditingSupport.js: | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._titleForProfile): | |
| * UserInterface/JavaScriptProfileView.js: | |
| * UserInterface/Main.js: | |
| (WebInspector.linkifyStringAsFragmentWithCustomLinkifier): | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.Type.fromMIMEType): | |
| * UserInterface/Utilities.js: | |
| 2013-05-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Make mailto: href links behave correctly. | |
| Test: data:text/html,<a href="mailto:pecoraro@apple.com?subject=email">Email Joe</a> | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Utilities.js: | |
| 2013-05-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13572739> REGRESSION: Styles sidebar url(...) should have a way to jump to the resource | |
| TextEditor / SourceCodeTextEditor (most resources) already had behavior where | |
| clicking a "link" would attempt to open it in the Inspector, and fallback to | |
| opening a new browser tab for the URL. This hardens that behavior in the | |
| "jump to symbol" case, and makes it work in the CSS Sidebar with Command+Click. | |
| To encourage editing in the style sidebar, style url(...)s as strings, | |
| which is how they displayed before these patches. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._openClickedLinks): | |
| Cleanup the code a bit. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked): | |
| Don't jump to symbol when clicking a link. Fallback to TextEditor's link opening behavior. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype): | |
| Handle jump to symbol when clicking a link to behave link TextEditor's link opening behavior. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .cm-link): | |
| In the Style sidebar editors display links as strings by default. | |
| 2013-05-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13572739> REGRESSION: Styles sidebar url(...) should have a way to jump to the resource | |
| Add extendedCSSToken, modeled after extendedXMLToken to parse url(...) | |
| links and give them a "link" style class. | |
| Normally CodeMirror parses "url", "(", <optionally quoted string>, ")". | |
| We hook into this case and manually parse the optionally quoted string | |
| ourselves so that we can handle quotes and whitespace exactly how we | |
| want to. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| 2013-05-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13865123> REGRESSION: Incorrect link tokenization of unquoted src/href links - <img src=...> | |
| Handle unquoted attributes when we take over tokenization of link attribute values. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| 2013-05-11 Timothy Hatcher <timothy@apple.com> | |
| Make the tab behavior consistent among all CodeMirror editors. | |
| Making this a setting is tracked by <rdar://problem/10593948>. | |
| Reviewed by Darin Adler. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| 2013-05-11 Timothy Hatcher <timothy@apple.com> | |
| Allow editing any local file since edits can be saved and reloaded right from the Inspector. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype._contentWillPopulate): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype._contentWillPopulate): | |
| 2013-05-11 Timothy Hatcher <timothy@apple.com> | |
| Support saving text resources and the console log to a local file. | |
| <rdar://problem/5827275> PARITY (Chrome Developer Tools): Add an option to save a resource locally | |
| Reviewed by Dean Jackson. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get supportsSave): | |
| (WebInspector.ClusterContentView.prototype.get saveData): | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): Always include the level. It was omitted | |
| when we didn't have text range selection to make it easier to copy and paste. But we also include the | |
| file and line info, so it was already has more info than just the message. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype._saveDataToFile): | |
| (WebInspector.ContentBrowser.prototype._save): | |
| (WebInspector.ContentBrowser.prototype._saveAs): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.get supportsSave): | |
| (WebInspector.LogContentView.prototype.get saveData): | |
| (WebInspector.LogContentView.prototype.handleCopyEvent): | |
| (WebInspector.LogContentView.prototype._formatMessagesAsData.var): | |
| (WebInspector.LogContentView.prototype._formatMessagesAsData): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.get supportsSave): | |
| (WebInspector.ScriptContentView.prototype.get saveData): | |
| * UserInterface/TextContentView.js: | |
| (WebInspector.TextContentView.prototype.get supportsSave): | |
| (WebInspector.TextContentView.prototype.get saveData): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get supportsSave): | |
| (WebInspector.TextResourceContentView.prototype.get saveData): | |
| 2013-05-11 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception I saw while navigating between pages. | |
| I only reproduced this once, but the fix is a simple null check. | |
| I'm assuming close was called a second time. | |
| Reviewed by Anders Carlsson. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype.close): | |
| 2013-05-10 Timothy Hatcher <timothy@apple.com> | |
| Tweak layer borders icon. | |
| <rdar://problem/13717886> Two layers buttons with different meanings | |
| * UserInterface/Images/LayerBorders.pdf: | |
| 2013-05-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13769698> Should be a way to jump between SourceMap resource and Original resource | |
| Add a "jump to symbol" mode when the command key is down for the CSS | |
| style sidebar to jump to the display CSS Resource. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set style): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateJumpToSymbolTrackingMode): | |
| Listen for GlobalModifierKeysDidChange events when the style for the | |
| editor has an owner rule and that owner rule has a source code location. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked): | |
| Jump to the display resource when clicking the highlighted range. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate): | |
| Immediately highlight hovered ranges for jump to symbol mode. | |
| 2013-05-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13769698> Should be a way to jump between SourceMap resource and Original resource | |
| Add a "jump to symbol" mode when the command key is down, to quickly | |
| jump between a SourceMapResource and the original resources for the | |
| hovered token. This mode takes precedence over debugger popovers if | |
| enabled (because the command key is pressed). | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): | |
| (WebInspector.SourceCodeTextEditor.prototype.hidden): | |
| (WebInspector.SourceCodeTextEditor.prototype.close): | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| (WebInspector.SourceCodeTextEditor.prototype._shouldTrackTokenHovering): | |
| Listen for GlobalModifierKeysDidChange events when this file has a source map | |
| (either it is a SourceMapResource or it is a SourceCode with sourceMap resources). | |
| (WebInspector.SourceCodeTextEditor.prototype._startTrackingTokenHoveringIfNeeded): | |
| (WebInspector.SourceCodeTextEditor.prototype._stopTrackingTokenHoveringIfNeeded): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume): | |
| (WebInspector.SourceCodeTextEditor.prototype._sourceCodeSourceMapAdded): | |
| In SourceCodeTextEditors there are 2 possible reasons we may have hover tracking, | |
| when on a breakpoint for JavaScript or in Jump To Symbol tracking mode. | |
| (WebInspector.SourceCodeTextEditor.prototype._updateJumpToSymbolTrackingMode): | |
| (WebInspector.SourceCodeTextEditor.prototype._enableJumpToSymbolTrackingModeSettings): | |
| (WebInspector.SourceCodeTextEditor.prototype._disableJumpToSymbolTrackingModeSettings): | |
| Switch between and different tracking modes with different settings. | |
| (WebInspector.SourceCodeTextEditor.prototype._sourceCodeLocationForEditorPosition): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked): | |
| When in jump to symbol mode, determine the sourceCodeLocation relating to the | |
| token that was clicked and jump between resources. | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate): | |
| When in jump to symbol mode, that takes precedence. Highlight just the hovered token. | |
| 2013-05-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13769698> Should be a way to jump between SourceMap resource and Original resource | |
| Move token tracking out of TextEditor into its own class with settings, | |
| CodeMirrorTokenTrackingController. You can now set the token mode on | |
| the controller to get different types of candidate hovered token results | |
| back to the delegate (TextEditor subclass). | |
| The CodeMirrorTokenTrackingController can start/stop tracking, highlight | |
| a given text range, set delays for mousing over and out of tokens before | |
| actions are taken, and provide different candidates depending the chosen | |
| mode. The current modes are: | |
| NonSymbolTokens - returns a candidate for just the hovered token. | |
| JavaScriptExpression - returns a candidate for the hovered token with | |
| extra information about the JavaScript expression ending at that token. | |
| When tracking is enabled, the delegate may be notified of changes: | |
| tokenTrackingControllerCanReleaseHighlightedRange - should remove the highlight | |
| tokenTrackingControllerHighlightedRangeReleased - the highlight was removed | |
| tokenTrackingControllerHighlightedRangeWasClicked - the highlight was clicked | |
| tokenTrackingControllerNewHighlightCandidate - new hovered highlight candidate | |
| A plus side of this is that TextEditor now no longer knows about | |
| "JavaScript". It shouldn't need to know about a certain mode of | |
| content that it contains. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/CodeMirrorTokenTrackingController.css: Added. | |
| (.CodeMirror .jump-to-symbol-highlight): Shared style for any type of editor. | |
| * UserInterface/CodeMirrorTokenTrackingController.js: Added. | |
| (WebInspector.CodeMirrorTokenTrackingController): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get delegate): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.set delegate): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get mode): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.set mode): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get mouseOverDelayDuration): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.set mouseOverDelayDuration): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get mouseOutReleaseDelayDuration): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.set mouseOutReleaseDelayDuration): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get classNameForHighlightedRange): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.set classNameForHighlightedRange): | |
| Different settings of the controller. | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get tracking): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.get candidate): | |
| Accessors for current state, but cannot be modified. | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.startTracking): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.stopTracking): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.highlightRange): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.removeHighlightedRange): | |
| API to make use of the tracker to start/stop/highlight. | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.boundsForRange): | |
| Helper for getting the bounds of a given codemirror text range. | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype.handleEvent): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedWithMarkedText): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._markedTextIsNoLongerHovered): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedOverEditor): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedOutOfEditor): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasPressedOverEditor): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasReleasedOverEditor): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._windowLostFocus): | |
| Events handled while tracking. Very few changes. | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._processNonSymbolToken): | |
| (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression): | |
| When a token is hovered, create a candidate depending on the controller's mode. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get tokenTrackingController): | |
| Create and expose the tokenTrackingController. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointRemoved): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): | |
| (WebInspector.SourceCodeTextEditor.prototype._shouldTrackTokenHovering): | |
| (WebInspector.SourceCodeTextEditor.prototype._startTrackingTokenHoveringIfNeeded): | |
| (WebInspector.SourceCodeTextEditor.prototype._stopTrackingTokenHoveringIfNeeded): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume): | |
| (WebInspector.SourceCodeTextEditor.prototype._updateJumpToSymbolTrackingMode): | |
| (WebInspector.SourceCodeTextEditor.prototype._enableJumpToSymbolTrackingModeSettings): | |
| (WebInspector.SourceCodeTextEditor.prototype._disableJumpToSymbolTrackingModeSettings): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerCanReleaseHighlightedRange): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeWasClicked): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject): | |
| Switch to the tracking controller instead of TextEditor methods and properties. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror .hovered-expression-highlight): | |
| (@-webkit-keyframes text-editor-hovered-expression-highlight-fadeout): | |
| Renamed the class name for expressions to have "expression" in the name. | |
| 2013-05-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13769698> Should be a way to jump between SourceMap resource and Original resource | |
| Introduce WebInspector.modifierKeys to know which modifier keys are | |
| active at any time (command, option, shift). Trigger events on changes | |
| through WebInspector.notifications. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._updateModifierKeys): | |
| (WebInspector._windowKeyDown): | |
| (WebInspector._windowKeyUp): | |
| * UserInterface/Object.js: | |
| 2013-05-10 Joseph Pecoraro <pecoraro@apple.com> | |
| Do a little renaming on ResourceSidebarPanel show methods for text | |
| ranges. This better matches the showSourceCodeLocation method names. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeTextRange): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalOrFormattedSourceCodeTextRange): | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): | |
| 2013-05-10 Timothy Hatcher <timothy@apple.com> | |
| Make the console prompt suggest completions after typing "." or "[". | |
| <rdar://problem/13860627> REGRESSION: Console autocompletion does not suggest anything until first character is typed | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype._scanStringForExpression): | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): | |
| 2013-05-09 Timothy Hatcher <timothy@apple.com> | |
| Tell WebInspector.Resource about its type when it is created instead of changing it later. | |
| This depends on: https://webkit.org/b/74935 | |
| <rdar://problem/13726105> Timeline network filters don't update as resources change type (74935) | |
| Reviewed by David Kilzer. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): | |
| 2013-05-09 Timothy Hatcher <timothy@apple.com> | |
| Use a different image for the layer border toggle button. | |
| <rdar://problem/13717886> Two layers buttons with different meanings | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): | |
| * UserInterface/Images/LayerBorders.pdf: Added. | |
| 2013-05-08 Timothy Hatcher <timothy@apple.com> | |
| Fix the heirarchical path components for unrevealed source map resources. | |
| <rdar://problem/13681487> Missing heirarchical path components selecting breakpoints in source map resources in Debugger sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject.getParent): | |
| Special case WebInspector.SourceMapResource. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype._updateSourceCode): | |
| Revert r50608. | |
| 2013-05-07 Timothy Hatcher <timothy@apple.com> | |
| Fix the background color for the Timeline navigation bar. | |
| The container is taller than the navigation bar, and it used for mouse over slop. | |
| So the background color needs to be on the navigation bar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid > .navigation-bar-container): | |
| (.content-view.timelines > .data-grid > .navigation-bar-container > .navigation-bar): | |
| 2013-05-07 Timothy Hatcher <timothy@apple.com> | |
| Compare async resource types by their first timestamp so they are in chronological order. | |
| <rdar://problem/13827118> Web Inspector: cannot see order of xhrs in resource inspector (115728) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.compareResourceTreeElements): | |
| 2013-05-07 Timothy Hatcher <timothy@apple.com> | |
| Fix and simplify the layout path for Toolbar. | |
| <rdar://problem/13828232> REGRESSION: Toolbar overflows when using Icons and Text (Horizontal) mode | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Toolbar.css: | |
| (.toolbar .control-section): | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype.customUpdateLayout.isOverflowingToolbar): | |
| (WebInspector.Toolbar.prototype.customUpdateLayout): | |
| 2013-05-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13821139> After deleting a node when remote inspecting, Web Inspector is broken | |
| When using the remote inspector, there is enough of a delay between | |
| messages that the didRemoveNode handler triggers the DOMTreeUpdater to | |
| refresh the portion of the tree before this removeNodeCallback happens. | |
| Since removeNodeCallback is asynchronous anyways, we should bail if | |
| the tree element was already removed from the tree (has no parent). | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.remove.removeNodeCallback): | |
| (WebInspector.DOMTreeElement.prototype.remove): | |
| 2013-05-07 Joseph Pecoraro <pecoraro@apple.com> | |
| Fix member name typo. | |
| This was the only occurrence of _selectDOMNode. This looks | |
| like it was just a typo of _selectedDOMNode. | |
| Reviewed by Darin Adler. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): | |
| 2013-05-07 Timothy Hatcher <timothy@apple.com> | |
| Use a brighter blue for selected labels in the label-only toolbar mode. | |
| This better matches the blue used in the selected toolbar icons. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ButtonToolbarItem.css: | |
| (.toolbar.label-only .item.activate.button.activated > .label): | |
| 2013-05-07 Timothy Hatcher <timothy@apple.com> | |
| Only allow the LCD to be a single line, giving less difference between toolbar modes and sizes. | |
| This better distributes the space in the LCD and makes it collapse down to 3 items when | |
| there isn't enough room for all 6 items. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DashboardView.css: | |
| (.toolbar .dashboard): | |
| (body.nightly-build .toolbar .dashboard): | |
| (body.nightly-build .toolbar.collapsed .dashboard): | |
| (body:not(.nightly-build) .toolbar.collapsed .dashboard): | |
| (body:not(.nightly-build) .toolbar.collapsed .dashboard > .logs): | |
| (.toolbar .dashboard > .item): | |
| (.toolbar .dashboard > .resourcesSize): | |
| (.toolbar .dashboard > .item > div): | |
| (.toolbar.normal-size.icon-and-label-vertical .dashboard): | |
| (.toolbar.normal-size.icon-and-label-horizontal .dashboard > .item): | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Update the LCD background to match Xcode 5. | |
| This change is conditional to non-nightlies. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DashboardView.css: | |
| (.toolbar .dashboard): | |
| (body:not(.nightly-build) .toolbar .dashboard): | |
| (body.window-inactive:not(.nightly-build) .toolbar .dashboard): | |
| (body.nightly-build .toolbar .dashboard): | |
| (.toolbar .dashboard > .item): | |
| (.toolbar.small-size.icon-and-label-horizontal .dashboard): | |
| (body.nightly-build .toolbar.small-size.icon-and-label-horizontal .dashboard): | |
| (.toolbar.small-size.icon-and-label-horizontal .dashboard > .item): | |
| (body.nightly-build .toolbar.small-size.icon-and-label-horizontal .dashboard > .item): | |
| (.toolbar.normal-size.icon-and-label-horizontal .dashboard): | |
| (body.nightly-build .toolbar.normal-size.icon-and-label-horizontal .dashboard): | |
| (.toolbar.small-size.icon-and-label-vertical .dashboard): | |
| (body.nightly-build .toolbar.small-size.icon-and-label-vertical .dashboard): | |
| (.toolbar.normal-size.icon-and-label-vertical .dashboard): | |
| (body.nightly-build .toolbar.normal-size.icon-and-label-vertical .dashboard): | |
| (.toolbar.icon-and-label-vertical .dashboard > .item): | |
| (body.nightly-build .toolbar.icon-and-label-vertical .dashboard > .item): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Update the filter field placeholder in the Resources sidebar when showing search results. | |
| Reviewed by Antoine Quint. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ResourceSidebarPanel.js: | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Always have the HierarchicalPathComponent take space so it gives the last item some padding. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path:not(.always-show-last-path-component-separator) > .hierarchical-path-component:last-child > .separator): | |
| Use visibility: hidden instead of display: none. | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Make ScopeBarItem and RadioButtonNavigationItem have a min-width so when they are selected the bold | |
| weight does not cause the item to change its width. | |
| This adds some updateLayout calls to places that needed it now or were missing it already. | |
| This change is not conditional to non-nightlies. It does no harm to always do this. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.set label): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): | |
| * UserInterface/Main.js: | |
| (WebInspector._contentBrowserSizeDidChange): | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem.prototype.get selected): | |
| (WebInspector.RadioButtonNavigationItem.prototype.set selected): | |
| (WebInspector.RadioButtonNavigationItem.prototype.get active): | |
| (WebInspector.RadioButtonNavigationItem.prototype.set active): | |
| (WebInspector.RadioButtonNavigationItem.prototype.updateLayout): | |
| * UserInterface/ScopeBar.js: | |
| (WebInspector.ScopeBar.prototype.updateLayout): | |
| (WebInspector.ScopeBar.prototype._populate): | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid): | |
| (WebInspector.TimelineDataGrid.prototype.updateLayout): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Show overflow shadow pockets in the navigation sidebar when content can scroll. | |
| This change is conditional to non-nightlies. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .overflow-shadow): | |
| (body.nightly-build .sidebar > .panel.navigation > .overflow-shadow): | |
| (.sidebar > .panel.navigation > .overflow-shadow.top): | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): | |
| (WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline): | |
| (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder): | |
| (WebInspector.NavigationSidebarPanel.prototype.hideEmptyContentPlaceholder): | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): | |
| (WebInspector.NavigationSidebarPanel.prototype._updateContentOverflowShadowVisibility): | |
| (WebInspector.NavigationSidebarPanel.prototype._updateFilter): | |
| (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): | |
| (WebInspector.NavigationSidebarPanel.prototype._treeElementExpandedOrCollapsed): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype.collapse): | |
| (TreeElement.prototype.expand): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Update focus and active focus generated images to match the blues used by Xcode 5. | |
| This change is not conditional to non-nightlies. It shouldn't be too revealing. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ImageUtilities.js: | |
| (.generateImage): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Update styles to match the majority of Xcode 5's design changes. | |
| The style changes are conditional so they wont apply when running a WebKit nightly. | |
| After WWDC we can remove the condition and the extra style rules this adds. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar .item.button.text-only): | |
| (body.nightly .navigation-bar .item.button:not(.disabled):not(.radio):not(.suppress-bezel):active): | |
| * UserInterface/CodeMirrorOverrides.css: | |
| (.CodeMirror .CodeMirror-gutters): | |
| (.body.nightly-build .CodeMirror .CodeMirror-gutters): | |
| (.CodeMirror .CodeMirror-linenumber): | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header): | |
| (.details-section .details-section > .header): | |
| (body.nightly-build .details-section > .header): | |
| (body.nightly-build .details-section .details-section > .header): | |
| * UserInterface/DividerNavigationItem.css: | |
| (.navigation-bar .item.divider): | |
| (body.nightly .navigation-bar .item.divider): | |
| * UserInterface/FilterBar.css: | |
| (.filter-bar): | |
| (body.nightly-build .filter-bar): | |
| (body:not(.nightly-build) .filter-bar > input[type="search"]): | |
| (body:not(.nightly-build) .filter-bar > input[type="search"]::-webkit-input-placeholder): | |
| (body:not(.nightly-build) .filter-bar > input[type="search"]:valid): | |
| * UserInterface/FilterBar.js: | |
| (WebInspector.FilterBar): | |
| * UserInterface/FindBanner.css: | |
| (body.nightly-build .find-banner): | |
| (body:not(.nightly) .find-banner > input[type="search"]): | |
| (body:not(.nightly) .find-banner > button): | |
| (.find-banner > button > .glyph): | |
| (body.nightly .find-banner > button > .glyph): | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (body.nightly .hierarchical-path-component > .separator): | |
| (.hierarchical-path-component.text-only > select): | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .title-bar): | |
| (body.nightly-build .sidebar > .panel.instrument > .title-bar): | |
| (.sidebar > .panel.instrument > .title-bar.profiles): | |
| (body.nightly-build .sidebar > .panel.instrument > .title-bar.profiles): | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree.panel .bottom-bar): | |
| (body.nightly-build .layer-tree.panel .bottom-bar): | |
| * UserInterface/Main.css: | |
| (#split-content-browser > .navigation-bar): | |
| (body.nightly-build #split-content-browser > .navigation-bar): | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar): | |
| (body.nightly-build .navigation-bar): | |
| (body.nightly-build.window-inactive .navigation-bar): | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .content): | |
| (body.nightly-build .sidebar > .panel.navigation > .content): | |
| (.sidebar > .panel.navigation > .overflow-shadow): | |
| (.sidebar > .panel.navigation > .overflow-shadow.top): | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| (.navigation-bar .item.radio.button.text-only.selected): | |
| (body:not(.nightly) .navigation-bar .item.radio.button.text-only.selected): | |
| (body.nightly .navigation-bar .item.radio.button.selected): | |
| * UserInterface/ResourceSidebarPanel.css: | |
| (.sidebar > .panel.resource > .empty-content-placeholder): | |
| (body.nightly-build .sidebar > .panel.resource > .empty-content-placeholder): | |
| (.sidebar > .panel.resource > .search-bar): | |
| (body.nightly-build .sidebar > .panel.resource > .search-bar): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/ScopeBar.css: | |
| (.scope-bar > li): | |
| (body:not(.nightly-build) .scope-bar > li): | |
| (body:not(.nightly-build) .scope-bar > li:active): | |
| (body:not(.nightly-build) .scope-bar > li.selected): | |
| (body.nightly-build .scope-bar > li): | |
| (body.nightly-build .scope-bar > li:active): | |
| (.scope-bar > li:hover): | |
| (.scope-bar > li.selected): | |
| (.scope-bar > li:active): | |
| (body.nightly-build .scope-bar > li.selected): | |
| * UserInterface/SearchBar.css: | |
| (.search-bar > input[type="search"]): | |
| (body:not(.nightly-build) .search-bar > input[type="search"]): | |
| (body:not(.nightly-build) .search-bar > input[type="search"]::-webkit-input-placeholder): | |
| (body:not(.nightly-build) .search-bar > input[type="search"]:valid): | |
| * UserInterface/SearchBar.js: | |
| (WebInspector.SearchBar): | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid): | |
| (body.nightly-build .content-view.timelines > .data-grid): | |
| (.content-view.timelines > .data-grid th): | |
| (body.nightly-build .content-view.timelines > .data-grid th): | |
| (.content-view.timelines > .data-grid th:not(:last-child)): | |
| (body.nightly-build .content-view.timelines > .data-grid th:not(:last-child)): | |
| (.content-view.timelines > .data-grid th.sortable:not(.mouse-over-collapser):active): | |
| (body.nightly-build .content-view.timelines > .data-grid th.sortable:not(.mouse-over-collapser):active): | |
| (.content-view.timelines > .data-grid th.sort-descending): | |
| (body.nightly-build .content-view.timelines > .data-grid th.sort-descending): | |
| (.content-view.timelines > .data-grid > .navigation-bar-container): | |
| (.content-view.timelines > .data-grid > .navigation-bar-container > .navigation-bar): | |
| (body.nightly-build .content-view.timelines > .data-grid > .navigation-bar-container > .navigation-bar): | |
| 2013-05-06 Timothy Hatcher <timothy@apple.com> | |
| Add a nightly-build class so we can hide new UI from nightly WebKit builds. | |
| Part of: <rdar://problem/13810992> Update Web Inspector to match Xcode 5's new design language | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| Set the nightly-build class on body if we are in a nightly build. | |
| 2013-05-03 Timothy Hatcher <timothy@apple.com> | |
| Add stubs for savedURL and appendedToURL. | |
| https://webkit.org/b/115561 | |
| rdar://problem/13806055 | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.savedURL): | |
| (InspectorFrontendAPI.appendedToURL): | |
| 2013-05-02 Timothy Hatcher <timothy@apple.com> | |
| Fix the alignment of the titles in the Timelines sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype._updateTitleElements): | |
| Only create a subtitle if the string has a value, not an empty string. | |
| 2013-05-01 Timothy Hatcher <timothy@apple.com> | |
| Make the Dashboard timer and Timeline views more robust when going back/forward. | |
| <rdar://problem/13612025> Dashboard: LCD timer never stops when going back/forward | |
| <rdar://problem/13180009> Recording sometimes never stops because the load event marker is never added | |
| <rdar://problem/13510955> Intermittently, timeline is in "days" after refreshing wsj.com site | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager): | |
| (WebInspector.DashboardManager.prototype._mainResourceDidChange): | |
| (WebInspector.DashboardManager.prototype._recordingStopped): | |
| (WebInspector.DashboardManager.prototype._startUpdatingTime): | |
| (WebInspector.DashboardManager.prototype._stopUpdatingTime): Added. | |
| (WebInspector.DashboardManager.prototype._updateTime): | |
| * UserInterface/NetworkGraphCalculator.js: | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._lowerBound): | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._upperBound): | |
| (WebInspector.NetworkTransferDurationCalculator.prototype._upperBound): | |
| Don't return NaN for the bounds. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get firstTimestamp): Added. | |
| Added as a helper to prevent using NaN as the start time. | |
| * UserInterface/ResourceTimelineRecord.js: | |
| (WebInspector.ResourceTimelineRecord.prototype.get startTime): | |
| Use firstTimestamp. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.startRecording): | |
| (WebInspector.TimelineManager.prototype.stopRecording): | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| (WebInspector.TimelineManager.prototype._clear): | |
| (WebInspector.TimelineManager.prototype._addRecord): | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): | |
| (WebInspector.TimelineManager.prototype._stopAutoRecordingSoon): | |
| (WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout): | |
| (WebInspector.TimelineManager.prototype._mainResourceDidChange): | |
| Fire an event on clear so the timeline view clears even if recording does not start. | |
| Track the main resource object and not the request identifier, since a resource | |
| might not have a request identifier in the back/forward case. Auto stop recording soon | |
| after every record, not just the load event since we don't always have load events. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._recordsCleared): | |
| Use RecordsCleared event instead of RecordingStarted to clear the view. | |
| 2013-05-01 Timothy Hatcher <timothy@apple.com> | |
| Reveal the line (if supplied) when showing a ScriptContentView. | |
| <rdar://problem/13785027> REGRESSION: Extra Scripts: no autoscroll to debugger statement. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| 2013-05-01 Timothy Hatcher <timothy@apple.com> | |
| Don't update the dashboard text unless it has changed. | |
| Also step up the interval we update the time so it does not try to update every 50ms when the | |
| duration is long enough to not matter. | |
| <rdar://problem/13718056> While JS debugging, everything in the inspector window is repainting all the time | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager.prototype._startUpdatingTime): | |
| (WebInspector.DashboardManager.prototype._updateTime): | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView.prototype.set logs): | |
| (WebInspector.DashboardView.prototype.set issues): | |
| (WebInspector.DashboardView.prototype.set errors): | |
| (WebInspector.DashboardView.prototype.set time): | |
| (WebInspector.DashboardView.prototype.set resourcesCount): | |
| (WebInspector.DashboardView.prototype.set resourcesSize): | |
| (WebInspector.DashboardView.prototype._appendElementForNamedItem.): | |
| 2013-05-01 Timothy Hatcher <timothy@apple.com> | |
| Breakpoint context menu items should appear for Extra and Anonymous Scripts. | |
| <rdar://problem/13776299> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointsBeneathTreeElement): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineDeleteTreeElement): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineContextMenuTreeElement): | |
| Check for WebInspector.ScriptTreeElement in addition to WebInspector.ResourceTreeElement. | |
| 2013-04-30 Timothy Hatcher <timothy@apple.com> | |
| Disable spellcheck and smart quotes in the console prompt. | |
| I'll upstream this to CodeMirror once I get approval from legal. | |
| <rdar://problem/13757709> | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| (window.CodeMirror): | |
| 2013-04-30 Timothy Hatcher <timothy@apple.com> | |
| Tweak the Toolbar layout code to not hide the Dashboard when sizes are off by one. | |
| This wasn't needed when sub-pixel layout was on, but that was disabled in http://webkit.org/b/149209. | |
| <rdar://problem/13757354> REGRESSION: Toolbar thinks it is collapsed, so dashboard is hidden | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype.customUpdateLayout): | |
| 2013-04-30 Timothy Hatcher <timothy@apple.com> | |
| Have dashboard buttons (console summary buttons) do filtering as well. | |
| <rdar://problem/13685685> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView): | |
| (WebInspector.DashboardView.prototype._consoleItemWasClicked): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.get scopeBar): | |
| * UserInterface/Main.js: | |
| (WebInspector.showFullHeightConsole): | |
| (WebInspector.showConsoleView): | |
| 2013-04-30 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12719925> Call stack should show live line number next to file name | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement): | |
| (WebInspector.GeneralTreeElement.prototype.get tooltipHandledSeparately): | |
| (WebInspector.GeneralTreeElement.prototype.set tooltipHandledSeparately): | |
| (WebInspector.GeneralTreeElement.prototype._updateTitleElements): | |
| Allow clients to handle the tooltip themselves, and to set subtitle as | |
| an element, instead of a string (already possible with mainTitle). | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| Set the subtitle as a live location <span>. | |
| (WebInspector.CallFrameTreeElement.prototype.onattach): | |
| Set the tooltip on the entire tree element once it is created. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationTooltip): | |
| Allow an optional prefix before the location string. | |
| 2013-04-29 Timothy Hatcher <timothy@apple.com> | |
| Remove an assert from StyleDetailsPanel.prototype.shown. | |
| The shown function can be called multiple times. Just keep the early return. | |
| Also make sure to call StyleDetailsPanel.prototype.hidden in another case. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.shown): | |
| 2013-04-29 Timothy Hatcher <timothy@apple.com> | |
| Skip invalid properties when associating related properties. | |
| <rdar://problem/13752586> DOMNodeStyles.js:981: console.assert(property.overridden); on html5please.com | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._associateRelatedProperties): | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| Don't allow Command+Enter in the Console with an empty expression. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsolePrompt.js: | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13616567> Can no longer clear the console with clear() | |
| LogContentView starts listening for an event in the constructor which | |
| was getting removed in close and not being added back. This ContentView | |
| is already treated like a singleton with other events, treat this the | |
| same and just avoid removing event listeners in close. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13765474> REGRESSION: Console should not clear on reload | |
| The backend sends the frontend a messagesCleared messages for many reasons. | |
| We should not clear the active log when there was a navigation. In those | |
| cases the LogManager will send out a Cleared or SessionStarted event. | |
| It would be messy and brittle to determine if we are in the middle of a | |
| main resource load, so it is easier to do a setTimeout and send an event | |
| if we did not do a navigation. | |
| This works well with all common cases, but breaks: | |
| js> console.log(1); console.clear(); console.log(2); | |
| Filed the follow-up bug to handle fixing this by providing the frontend | |
| with the information it needs in messagesCleared. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): | |
| Don't append a blank ConsoleMessage row for console.clear messages. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.messagesCleared): | |
| (WebInspector.LogManager.prototype._mainResourceDidChange): | |
| Defer ActiveLogCleared events so that we don't issue one while we | |
| are reloading the page. | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13764663> Tooltips on live location links are no longer working | |
| Changing the content in mousemove, even if the content was the same, | |
| would cause the tooltip to disappear. Avoid changing the content unless | |
| we absolutely need to. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.updateDisplayString): | |
| Avoid unnecessary content updates. | |
| (WebInspector.SourceCodeLocation.prototype._locationString): | |
| Fix typo causing column numbers to not show up in tooltips. | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13763988> Jump to "rs.js" error location link not live on theverge.com | |
| The URL in the ConsoleMessage is the URL of the Script, which contains | |
| a fragment. The URL of the Resource does not contain the fragment. When | |
| we create a sourceCodeLocation in linkifyLocation we want to get the | |
| resource that has a sidebar item, because that is the resource in the | |
| sidebar that will show a ContentView. So if we get a Script try to get | |
| the Resource for that Script if one exists. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.linkifyLocation): | |
| 2013-04-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13442566> Console context selector should truncate or generate better names when the names are long | |
| Truncate the context selector quick console nav bar item. And modify | |
| how items are sorted in the context menu to show the frame name if one | |
| is available. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): | |
| (WebInspector.HierarchicalPathComponent.prototype.get displayName): | |
| (WebInspector.HierarchicalPathComponent.prototype.set displayName): | |
| (WebInspector.HierarchicalPathComponent.prototype.get truncatedDisplayNameLength): | |
| (WebInspector.HierarchicalPathComponent.prototype.set truncatedDisplayNameLength): | |
| Separate the display name property from the title element's content, so we | |
| can truncate the display but store the real name. | |
| (WebInspector.HierarchicalPathComponent.prototype._updateElementTitleAndText): | |
| Truncate the display in the navigation bar. | |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement.createOption): | |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement): | |
| Work around an NSMenu issue and truncate in the option text in the context menu. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponent): | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponentFromFrame): | |
| (WebInspector.QuickConsole.prototype._compareExecutionContextPathComponents): | |
| Set the Frame on the PathComponents to use later for sorting. | |
| 2013-04-29 Timothy Hatcher <timothy@apple.com> | |
| Abort earlier when loading completions for a null or undefined value. | |
| <rdar://problem/13764611> JavaScriptLogViewController.js:293: CONSOLEAPI ERROR: Unknown result type: undefined | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded): | |
| Return early if the RemoteObject is null or undefined. Also release the completion group. | |
| 2013-04-29 Timothy Hatcher <timothy@apple.com> | |
| Correct the layout of navigation items when an item has selector arrows. | |
| <rdar://problem/13717922> Layer border toggle button disappears sometimes | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): | |
| (WebInspector.HierarchicalPathComponent.prototype.get minimumWidth): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set forcedWidth): | |
| (WebInspector.HierarchicalPathComponent.prototype.get selectorArrows): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set selectorArrows): Added. | |
| Account for the width of the selector arrows when using minimum width. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout): | |
| Ask HierarchicalPathComponent for its minimum width. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.updateLayout): | |
| Skip flexible space items since they can take up no space at the minimum width. | |
| 2013-04-27 Dean Jackson <dino@apple.com> | |
| <rdar://problem/13441708> Make the Web Inspector work if HiDPI canvas is disabled on OS X | |
| Reviewed by Tim Hatcher. | |
| For <rdar://problem/13437328>, HIGH_DPI_CANVAS was disabled on retina devices, so | |
| the places in the inspector that use a canvas must double the dimensions of | |
| the image buffers they request. | |
| * UserInterface/DashboardView.css: | |
| (.toolbar .dashboard): Since the image being pased in as background might be 2x, | |
| make sure that it uses the element size for the background. | |
| * UserInterface/DashboardView.js: Request a 2x canvas if necessary. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): No need to pass in scale, as this method is passed the | |
| correct width and height the caller needs. Use get/setImageData methods. | |
| (generateColoredImagesForCSS): Calculate a scaledWidth/Height to be used throughout | |
| this method. Make sure we create contexts with the correct dimensions, and save/restore | |
| them at full size. | |
| (._drawImageShadow): Use scaledWidth/Height. | |
| (._invertMaskImage): No need to pass in width and height.. | |
| (._applyImageMask): Ditto. | |
| (generateEmbossedImages): Calculate a scaledWidth/Height to be used throughout | |
| this method. Make sure we create contexts with the correct dimensions. | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover.prototype.set frame): Make sure to set the background size when | |
| the frame is updated. | |
| (WebInspector.Popover.prototype._drawBackground): Create a correctly scaled canvas, | |
| and some minor code cleanup. | |
| 2013-04-27 Timothy Hatcher <timothy@apple.com> | |
| Fix the speed of typing in the Web Inspector. | |
| ToggleControlToolbarItem regenerates its images every time 'toggled' is set, even | |
| if the flag does not change! And the dock button updates 'toggled' on keydown and | |
| keyup to update when Option is pressed. | |
| <rdar://problem/13756496> REGRESSION: Dock/undock buttons regenerates ever keydown and keyup! | |
| Reviewed by Dean Jackson. | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| (WebInspector.ToggleButtonNavigationItem.prototype.set toggled): Return early if flag does not change. | |
| 2013-04-27 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13143692> Object literal properties should not have popovers | |
| Given test: | |
| var foo = 300, o = { foo: 1 }; | |
| var result = o.foo; | |
| This patch makes it so hovering "foo" in the object literal does not | |
| show a popover, it used to show 300. While hovering the variable "foo" | |
| or hovering the property access "o.foo" both show expected values. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._mouseMovedOverEditor): | |
| If we are hovering a JavaScript token inside of a <script> in HTML resources | |
| then the JavaScript state is actually token.state.localState. If it is in | |
| a JavaScript resource then it is just token.state. Pass the most specific | |
| state on our partial "token" object. | |
| (WebInspector.TextEditor.prototype._checkHoveredToken): | |
| Bail for JavaScript object literal properties. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13753106> SourceCodeTextEditor.js:815: JS ERROR: TypeError: undefined is not an object (evaluating this.hoveredToken.bounds) | |
| We have a complete token in tokenWasHovered, however between then and | |
| when the async DebuggerAgent.evaluateOnCallFrame callback happens the | |
| hovered token can change. If it changed, bail, so we don't end up | |
| trying to put the popover on the wrong hovered token or worse | |
| hit this exception and break execution. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered.populate): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| Add asserts and preventative bails in multiple places to catch | |
| similar issues in the future if new paths are added. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13746094> Esc inside a read only editor (JavaScript) should not bring up completion suggestions | |
| Pass on "Esc" if the editor is read only. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleEscapeKey): | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13573902> Line numbers in JS console.log / console.error Messages should be live, they jump to the wrong location | |
| <rdar://problem/13702357> Line numbers in JS Console Error Messages should be live, they jump to the wrong location | |
| Make the ConsoleMessage and Profiler links live when possible. Create | |
| a live link with createSourceCodeLocationLink or linkifyLocation. | |
| ConsoleMessages's have line and column information now both at the | |
| base and in stack traces. Profiler nodes don't have column info, but we | |
| can still make them live, just not entirely accurate. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._formatMessage): | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): | |
| Use WebInspector.linkifyLocation with url, line, and column. | |
| * UserInterface/Main.js: | |
| (.showSourceCodeLocation): | |
| (WebInspector.createSourceCodeLocationLink): | |
| (WebInspector.linkifyLocation): | |
| If we have the resource with url passed into linkifyLocation | |
| it creates a link with a sourceCodeLocation. Otherwise it just | |
| creates a basic link with the appropriate styles. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorDataGridNode.prototype.createCell): | |
| (WebInspector.CSSSelectorDataGridNode.prototype._linkifyLocation): | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype._linkifyLocation): | |
| Use WebInspector.linkifyLocation with url and lineNumber. Add | |
| a FIXME about the missing column number. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13573902> Line numbers in JS console.log / console.error Messages should be live, they jump to the wrong location | |
| <rdar://problem/13702357> Line numbers in JS Console Error Messages should be live, they jump to the wrong location | |
| Give ConsoleMessage a column number. The backend now sends us this info. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleCommandResult.js: | |
| (WebInspector.ConsoleCommandResult): | |
| * UserInterface/ConsoleMessage.js: | |
| (WebInspector.ConsoleMessage): | |
| (WebInspector.ConsoleMessage.create): | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl): | |
| (WebInspector.ConsoleMessageImpl.prototype.get levelString): | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.messageWasAdded): | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13745104> First revealLine to SourceMapResource lineNumber is not working | |
| SourceMapResource's may lazily load their data. In such cases the | |
| ContentView for the resource will be Generic and ignore the revealLine. | |
| Once loaded, the Generic ContentView will be replaced by a better view, | |
| but the line number to reveal has been lost. Save that information in | |
| the cluster content view, as long as the resource has not finished, | |
| and pass it on to the new content view when the resource finishes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype.requestContentFromBackend): | |
| Mark as finished after updating types. | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype.showResponse): | |
| (WebInspector.ResourceClusterContentView.prototype._resourceTypeDidChange): | |
| (WebInspector.ResourceClusterContentView.prototype._resourceLoadingDidFinish): | |
| If a revealLine comes in for a resource not yet finished loading, replay | |
| the reveal line when the resource does finish. If subsequent reveals come | |
| in, the most recent one wins. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor._prettyPrint.prettyPrintAndUpdateEditor): | |
| When a file is formatted we updated the delayed line number to reveal, but | |
| didn't update the delayed text range to select. Do that just in case. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701579> Styles sidebar should show source map location by default instead of on hover | |
| When hovering a link with Command we are showing the original, | |
| unformatted location. So make sure that when clicked we jump | |
| to that exact, unformatted location. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.createGoToArrowButton): | |
| Handle Command+Click to jump to an unformatted location. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalUnformattedSourceCodeLocation): | |
| Allow showing a source code that forces unformatting. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._revealPendingLineIfPossible): | |
| (WebInspector.TextEditor.prototype.revealLine): | |
| May need to unformat the resource before revealing the line. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.showSourceCode): | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype.showResponse): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.revealLine): | |
| * UserInterface/TextContentView.js: | |
| (WebInspector.TextContentView.prototype.revealLine): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.revealLine): | |
| Pass the forceUnformat option through revealLine paths. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701579> Styles sidebar should show source map location by default instead of on hover | |
| Update the rules for a live location display. | |
| - Show display location by default if there is one. | |
| - Show display locations in italics, original locations display non-italics. | |
| - Command+Mouseover a display location will show the original location. | |
| - Provide different display styles for column numbers. Default to "OnlyIfLarge" | |
| meaning only show column numbers if the column is > 80. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| Simplify by using SourceCodeLocation.prototype.tooltipString. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.originalLocationString): | |
| (WebInspector.SourceCodeLocation.prototype.formattedLocationString): | |
| (WebInspector.SourceCodeLocation.prototype.displayLocationString): | |
| Add the new column style parameter. Pass it through to _locationString. | |
| (WebInspector.SourceCodeLocation.prototype.tooltipString): | |
| Always show full URLs and columns in tooltips. | |
| (WebInspector.SourceCodeLocation.prototype._locationString): | |
| Respect the column style when including column numbers. | |
| (WebInspector.SourceCodeLocation.prototype.updateDisplayString): | |
| (WebInspector.SourceCodeLocation.prototype.mouseOverOrMove): | |
| (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationString): | |
| Update the default value to displayLocation. And the Command+Mouseover to originalLocation. | |
| 2013-04-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701576> SASS source map location is wrong on http://html5please.com | |
| CSSRule.selectorList.range has column information, which allows us to | |
| provide a much better location to jump to. So when selectorList and | |
| its SourceRange is available, use that for its start line and column. | |
| Fallback to the CSSRule.sourceLine which is always available. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| 2013-04-26 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror from 3.11+ to 3.12. | |
| * UserInterface/External/CodeMirror/clojure.js: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.js: Updated. | |
| * UserInterface/External/CodeMirror/javascript.js: Updated. | |
| * UserInterface/External/CodeMirror/searchcursor.js: Updated. | |
| * UserInterface/External/CodeMirror/sql.js: Updated. | |
| 2013-04-26 Timothy Hatcher <timothy@apple.com> | |
| Make completions work after open brackets. | |
| This also improves things to limit keywords to certain contexts. | |
| <rdar://problem/13746491> Should have JavaScript completion suggestions after a base of all open bracket characters, e.g. "if (tr|" | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded): | |
| 2013-04-26 Timothy Hatcher <timothy@apple.com> | |
| Improve multi-line support in the console prompt. | |
| Pressing return at the end of the expression now does a parse to see if the expression | |
| is ready to evaluate. We will insert a new line if the error is recoverable, otherwise | |
| we will evaluate it. Pressing enter will insert a new line when there is no text, when | |
| the cursor is not at the last position or there is a selection. Command-Enter will now | |
| always evaluate the expression. | |
| <rdar://problem/13747367> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt): | |
| (WebInspector.ConsolePrompt.prototype._handleEnterKey.positionsEqual): Added. | |
| (WebInspector.ConsolePrompt.prototype._handleEnterKey.commitTextOrInsertNewLine): Added. | |
| (WebInspector.ConsolePrompt.prototype._handleEnterKey): | |
| (WebInspector.ConsolePrompt.prototype._handleCommandEnterKey): | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptShouldCommitText): | |
| 2013-04-25 Timothy Hatcher <timothy@apple.com> | |
| Fix some edge cases with the default JavaScript completions. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): | |
| Correct the check for switch statements which was missing the "type" parts. Use "info" | |
| instead to check for "switch". Substring the suffix, since there are cases it can be longer. | |
| Also prevent keyword completions in var declarations, except for "this". | |
| 2013-04-25 Timothy Hatcher <timothy@apple.com> | |
| Properly handle duplicate query parameters and form encoded POST data. | |
| <rdar://problem/13737105> Duplicate query parameters only show the last item in the sidebar data grids | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshURL): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestDataSection): | |
| Pass true to parseQueryString to get an array of name/value pairs. Then build | |
| the DataGrid using that result. | |
| * UserInterface/Utilities.js: | |
| (parseLocationQueryParameters): | |
| (parseQueryString): | |
| Added arrayResult parameter to allow getting all values, not just the last one. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Improve the sort order for array index completions. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.receivedPropertyNames.compare): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.receivedPropertyNames): | |
| Try to sort in numerical order first, then as strings. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Allow autocompletion after "({a:1,b:2})" to suggest "a" and "b" properties. | |
| <rdar://problem/5866281> Console should allow autocompletion after symbols like ), ], } | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._scanStringForExpression): | |
| Ignore stop characters when we are inside brackets. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Remove TextPrompt and JavaScriptTextPrompt. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptTextPrompt.css: Removed. | |
| * UserInterface/JavaScriptTextPrompt.js: Removed. | |
| * UserInterface/Main.html: | |
| * UserInterface/TextPrompt.css: Removed. | |
| * UserInterface/TextPrompt.js: Removed. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Update DatabaseContentView to use ConsolePrompt. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DatabaseContentView.css: | |
| (.database-query-prompt): | |
| (.database-user-query::before, .database-query-prompt::before, .database-query-result::before): | |
| (.database-user-query): | |
| (.database-query-result): | |
| * UserInterface/DatabaseContentView.js: | |
| (WebInspector.DatabaseContentView): | |
| (WebInspector.DatabaseContentView.prototype.shown): | |
| (WebInspector.DatabaseContentView.prototype.updateLayout): | |
| (WebInspector.DatabaseContentView.prototype._messagesClicked): | |
| (WebInspector.DatabaseContentView.prototype.accumulateMatches): | |
| (WebInspector.DatabaseContentView.prototype.tableNamesCallback): | |
| (WebInspector.DatabaseContentView.prototype.consolePromptCompletionsNeeded): | |
| (WebInspector.DatabaseContentView.prototype.consolePromptTextCommited): | |
| (WebInspector.DatabaseContentView.prototype._appendQueryResult): | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Implement live completions for the ConsolePrompt. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt.prototype.updateCompletions): | |
| (WebInspector.ConsolePrompt.prototype.completionControllerCompletionsNeeded): | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.evaluated.getCompletions): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.evaluated): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.receivedPropertyNamesFromEvaluate): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded.receivedPropertyNames): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptCompletionsNeeded): | |
| (WebInspector.JavaScriptLogViewController.prototype._clearLastProperties): | |
| Most of this is copied and adapted from JavaScriptTextPrompt. The new part if the caching of property names. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Prevent the Escape key from toggling and triggering a completion. | |
| When the prompt is empty we allow console toggling. When not empty it triggers completion. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleEscapeKey): | |
| Call the completionControllerShouldAllowEscapeCompletion delegate function. | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt.prototype.completionControllerShouldAllowEscapeCompletion): | |
| Added. Return true if the prompt is not empty. | |
| * UserInterface/KeyboardShortcut.js: | |
| (WebInspector.KeyboardShortcut._handleKeyDown): | |
| Don't process the shortcut if default was prevented. We know someone already handled | |
| the key, but didn't call stopPropagation. CodeMirror does this. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Implement default completions for JavaScript in CodeMirrorCompletionController. | |
| Also hook up completions in ConsolePrompt to get the default completions. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._scanStringForExpression): | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.matchKeywords): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.matchVariables.filterVariables): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions.matchVariables): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): | |
| * UserInterface/ConsolePrompt.js: | |
| (WebInspector.ConsolePrompt): | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Hook up the ConsolePrompt delegate to JavaScriptLogViewController. | |
| This makes the prompt work and evaluate results. No auto completion yet. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptHistoryDidChange): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommited.printResult): | |
| (WebInspector.JavaScriptLogViewController.prototype.consolePromptTextCommited): | |
| (WebInspector.JavaScriptLogViewController.prototype._evaluateInInspectedWindow.evalCallback): | |
| (WebInspector.JavaScriptLogViewController.prototype._evaluateInInspectedWindow): | |
| Copied from JavaScriptTextPrompt.evalInInspectedWindow. | |
| 2013-04-24 Timothy Hatcher <timothy@apple.com> | |
| Start using ConsolePrompt in the QuickConsole. | |
| This simplifies the DOM structure of the QuickConsole and makes resizing happen | |
| automatically using flex layout instead of JavaScript. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): | |
| (WebInspector.JavaScriptLogViewController.prototype.startNewSession): | |
| (WebInspector.JavaScriptLogViewController.prototype._handleClearShortcut): | |
| (WebInspector.JavaScriptLogViewController.prototype._handleFindShortcut): | |
| (WebInspector.JavaScriptLogViewController.prototype._handleFindNextShortcut): | |
| (WebInspector.JavaScriptLogViewController.prototype._handleFindPreviousShortcut): | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): | |
| Remove keydown and bind the the keyboard shortcuts to the messages element | |
| and prompt element using specific event handlers. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.shown): | |
| (WebInspector.LogContentView.prototype.searchBarWantsToLoseFocus): Match _escapeWasPressed. | |
| (WebInspector.LogContentView.prototype._activeLogCleared): | |
| (WebInspector.LogContentView.prototype._keyDown): | |
| Removed keyboard shortcut handling that was using private properties | |
| from JavaScriptLogViewController. | |
| * UserInterface/Main.html: | |
| Include ConsolePrompt.js and ConsolePrompt.css. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): | |
| (.quick-console > .console-prompt): | |
| (.quick-console > .console-prompt::before): | |
| (.quick-console > .console-prompt > .CodeMirror): | |
| (.quick-console > .navigation-bar): | |
| Simplified by removing redundant elements. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Removed redundant elements. | |
| (WebInspector.QuickConsole.prototype.updateLayout): | |
| Set max-height and stop calling _updateSize. | |
| (WebInspector.QuickConsole.prototype._updateSize): Removed. | |
| 2013-04-23 Timothy Hatcher <timothy@apple.com> | |
| Start using CodeMirror for the Console prompt. | |
| This introduces a new class, ConsolePrompt. | |
| Part of: <rdar://problem/13359916> Typing in the console is improved, but still much slower | |
| than in Chrome / the WebKit inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsolePrompt.css: Added. | |
| (.console-prompt): | |
| (.console-prompt > .CodeMirror): | |
| (.console-prompt > .CodeMirror-scroll): | |
| * UserInterface/ConsolePrompt.js: Added. | |
| (WebInspector.ConsolePrompt): | |
| (WebInspector.ConsolePrompt.prototype.get element): | |
| (WebInspector.ConsolePrompt.prototype.get delegate): | |
| (WebInspector.ConsolePrompt.prototype.set delegate): | |
| (WebInspector.ConsolePrompt.prototype.get text): | |
| (WebInspector.ConsolePrompt.prototype.set text): | |
| (WebInspector.ConsolePrompt.prototype.get history): | |
| (WebInspector.ConsolePrompt.prototype.set history): | |
| (WebInspector.ConsolePrompt.prototype.get focused): | |
| (WebInspector.ConsolePrompt.prototype.focus): | |
| (WebInspector.ConsolePrompt.prototype.shown): | |
| (WebInspector.ConsolePrompt.prototype._handlePreviousKey): | |
| (WebInspector.ConsolePrompt.prototype._handleNextKey): | |
| (WebInspector.ConsolePrompt.prototype._handleEnterKey): | |
| (WebInspector.ConsolePrompt.prototype._restoreHistoryEntry): | |
| (WebInspector.ConsolePrompt.prototype._historyEntryForCurrentText): | |
| (WebInspector.ConsolePrompt.prototype._rememberCurrentTextInHistory): | |
| 2013-04-23 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13681931> Debugger Popover should not dismiss when mouse is over the popover | |
| We would always dismiss the popover when we'd hover more than 1 second | |
| outside of the marked token in the text editor. This would also happen | |
| if the mouse happened to be over the popover shown for the marked token. | |
| We now track whether the mouse is over the presented popover and only | |
| dismiss the popover when no longer hovering the marked text in case the | |
| mouse is not over it. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EventHandler.js: Added. | |
| (WebInspector.EventHandler): | |
| (WebInspector.EventHandler.prototype.handleEvent): | |
| New utility to handle events in a way that makes it convenient to start | |
| and stop tracking events in the scope of that object without using closures. | |
| * UserInterface/Main.html: | |
| Add the new EventHandler helper. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.hidden): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume): | |
| (WebInspector.SourceCodeTextEditor.prototype.hoveredTokenWasReleased): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction): | |
| (WebInspector.SourceCodeTextEditor.prototype.willDismissPopover): | |
| (WebInspector.SourceCodeTextEditor.prototype._dismissPopover): | |
| (WebInspector.SourceCodeTextEditor.prototype._trackPopoverEvents): | |
| (WebInspector.SourceCodeTextEditor.prototype._popoverMouseover): | |
| (WebInspector.SourceCodeTextEditor.prototype._popoverMouseout): | |
| 2013-04-22 Timothy Hatcher <timothy@apple.com> | |
| Teach CodeMirror about the CSS properties, keywords and colors we support in WebKit. | |
| This keeps syntax highlighting in sync with code completion. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.collectPropertyNameForCodeMirror): | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions.updateCodeMirrorCSSMode): | |
| (WebInspector.CSSCompletions.requestCSSNameCompletions): | |
| 2013-04-21 Timothy Hatcher <timothy@apple.com> | |
| Fix some selection issues in the Console. | |
| Allow command-click on a single row selection to deselect that row the first time. | |
| Before it was requiring two clicks -- because it would become selected twice -- | |
| before it would deselect. | |
| Also make sure to clear focusable children after populating delayed results, | |
| like a the DOM tree. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): | |
| (WebInspector.LogContentView.prototype._updateMessagesSelection): | |
| 2013-04-21 Timothy Hatcher <timothy@apple.com> | |
| Allow the context menu and clicking on any link in the console. | |
| There are other links in the console besides those with the console-message-url | |
| style class that should work and get the normal context menu. | |
| <rdar://problem/13702031> can't click on a "failed to load" url in console | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): | |
| (WebInspector.LogContentView.prototype._targetInMessageCanBeSelected): | |
| Check only for tag name, not class name. | |
| 2013-04-19 Timothy Hatcher <timothy@apple.com> | |
| Allow both text and row selections in the Console. | |
| Text selection switches to row selection if the text selection spans multiple rows. | |
| <rdar://problem/13599610> REGRESSION: Can't select partial text of console output | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._onmousedown): | |
| Call event.stopPropagation() to prevent row selection in the console. | |
| * UserInterface/LogContentView.css: | |
| (.console-message-text > span): Added. Allow text selection. | |
| (.console-message::before, .console-user-command::before, .javascript-prompt::before, .console-group-title::before): | |
| (.console-group-title::before): | |
| Use px instead of em to fix a positioning issue. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| (WebInspector.LogContentView.prototype._targetInMessageCanBeSelected): | |
| (WebInspector.LogContentView.prototype._mousemove): | |
| Allow text selection that switches to row selection if the text selection spans multiple rows. | |
| This involves delaying operations from mousedown until later in mousemove or mouseup. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.treeElementMouseDown): | |
| Call event.stopPropagation() to prevent row selection in the console. | |
| 2013-04-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701561> Improve SourceMap folder tree hierarchies | |
| Implement a few improvements to folder tree hierarchies. | |
| - if there is a sourceRoot in the sourceMap use that as the base for | |
| subpaths, otherwise fallback to the sourceMappingURL (may change). | |
| - if a source is an absolute URL on a different scheme / host, prefix | |
| the subpath with a folder of the host name. | |
| - flatten folder chains in the UI. Makes expanding folders easier. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMap.js: | |
| (WebInspector.SourceMap): | |
| (WebInspector.SourceMap.prototype.get sourceMappingBasePathURLComponents): | |
| (WebInspector.SourceMap.prototype._parseMap): | |
| Save the sourceRoot. And return urlComponents for the basePath, instead of | |
| just the path. | |
| * UserInterface/Utilities.js: | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype.get sourceMapDisplaySubpath): | |
| Determine the subpath to display in the UI for this source map resource. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate.combineFolderChain): | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate.findAndCombineFolderChains): | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate): | |
| Flatten folder chains. | |
| 2013-04-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701561> Improve SourceMap folder tree hierarchies | |
| Correctly resolve dots when determining absolute URLs. Previously I had | |
| left in extra "../s", however they should have been removed. And | |
| absoluteURL should handle resolving any dots in the partialURL. | |
| This fixes ASSERTs in Debug WebKit builds where we were calling | |
| loadResourceSynchronously with a URL that was expected to be | |
| absolute and wasn't. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMap.js: | |
| * UserInterface/Utilities.js: | |
| 2013-04-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13701561> Improve SourceMap folder tree hierarchies | |
| Remove the old combine folder chain code. It will be easier to follow | |
| the new code with the old code gone. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate.combineFolderChain): | |
| 2013-04-19 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13654793> Source Maps: Support for Stylesheets (less / sass / scss) with SourceMaps | |
| The Inspector protocol now tells us when a CSS response contains a | |
| sourceMappingURL for a Resource. If we are given a source map URL, | |
| download the source map and associate it with the Resource. | |
| Give Stylesheet SourceMapResources (like sass stylesheets) a CSS | |
| clipping icon instead of using the generic clipping icon. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): | |
| (WebInspector.FrameResourceManager.prototype._createResource): | |
| If there is a sourceMapURL, download it and associate it with the Resource. | |
| * UserInterface/Images/ClippingCSS.png: Added. | |
| * UserInterface/Images/ClippingCSS@2x.png: Added. | |
| * UserInterface/ResourceIcons.css: | |
| (.source-map-resource.resource-icon.resource-type-stylesheet .icon): | |
| CSS Clipping icon for stylesheet source map resources (like less / sass / scss). | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.loadingFinished): | |
| Handle and pass on the new "extraResourceInfo" parameter. | |
| 2013-04-19 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13654793> Source Maps: Support for Stylesheets (less / sass / scss) with SourceMaps | |
| Follow OpenSource and merge PositionSourceMap into SourceMap. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMap.js: | |
| (WebInspector.SourceMap): | |
| (WebInspector.SourceMap.prototype.findEntry): | |
| (WebInspector.SourceMap.prototype.findEntryReversed): | |
| (WebInspector.SourceMap.prototype._parseMap): | |
| * UserInterface/SourceMapManager.js: | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSourceMap): | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Make sure to call shown on the current Style sub-panel when the sidebar visibility changes. | |
| <rdar://problem/13604148> Content jumps in details sidebar when switching to styles pane | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): | |
| Call shown on the selected panel. | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Use CSSAgent.setStyleText for Style Attribute editing too. | |
| <rdar://problem/13630483> Style Attribute editing in the Style details sidebar does not work on shadow content (114442) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText): | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Switch from X-WebKit-CSP to Content-Security-Policy for the CSP header. | |
| Also stop allowing 'unsafe-eval' since the one place we used eval() is dead code. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype.loadFromJSONIfNeeded): Removed. Not used by Safari. | |
| * UserInterface/Main.html: | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Make sure to always include the New Rule button in the Styles sidebar. | |
| <rdar://problem/13683941> Can't add a new rule unless there is a matched rule already | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.addNewRuleButton): Added. | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Call addNewRuleButton if | |
| addedNewRuleButton isn't true after the end of the loop. | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Remove workaround for <rdar://problem/13337211> now that it is fixed. | |
| Removing this ends up fixing: | |
| <rdar://problem/13612942> REGRESSION: Style sidebar does not update immediately with node change | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): | |
| Removed the repeat refresh polling logic. | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Properly handle !important properties from inherited rules. | |
| <rdar://problem/13683742> Important properties from inherited rules | |
| mistakenly strikeout the effective property | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): | |
| Mark properties as overridden from inherited elements if there | |
| is already an effective property from another element. | |
| 2013-04-18 Timothy Hatcher <timothy@apple.com> | |
| Adopt CSSAgent.setStyleText added in https://webkit.org/b/109340. | |
| <rdar://problem/13337211> Editing styles on daringfireball.net interrupts autocompletion and flashes | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.styleChanged): Use CSSAgent.setStyleText. | |
| * UserInterface/InspectorBackendCommands.js: Updated. | |
| 2013-04-18 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13681577> Unresolved breakpoint in SourceMapResource when reloading page | |
| The ContentBrowser no longer contains ResourceContentViews directly, it | |
| has ResourceClusterContentViews. Update the closeAll prototype call on | |
| page navigations to make sure resource views get closed properly. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| 2013-04-18 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13681487> Missing heirarchical path components selecting breakpoints in source map resources in Debugger sidebar | |
| Force onpopulate to create the SourceMapTreeElements immediately, | |
| instead of lazily waiting for the user to expand the Resource in | |
| the Resources sidebar. Then, when we look up the TreeElement to | |
| get the hierarchical path components it will be found. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype._updateSourceCode): | |
| (WebInspector.SourceCodeTreeElement.prototype._sourceMapAdded): | |
| 2013-04-17 Joseph Pecoraro <pecoraro@apple.com> | |
| ERROR: TypeError: 'undefined' is not an object (evaluating 'currentContentView.handleCopyEvent.bind') | |
| Right clicking in an editor was producing an error. Check if both | |
| the content view and the handleCopyEvent handler exist. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get handleCopyEvent): | |
| 2013-04-15 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception that happens when clicking source links multiple times. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.showContentView): | |
| Return currentView if it is already showing. This matches the case where we return the view | |
| if it wasn't already showing. Change other returns to return null instead of undefined. | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype._showContentViewForIdentifier): | |
| Add an assert that we have a content view. This wasn't needed but I used to to pinpoint the bug. | |
| 2013-04-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13644426> Support %c - styled console messages - http://adamschwartz.co/log/ | |
| Merge OpenSource r130941, r131448, r134166, r134202. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.styleFormatter): | |
| (WebInspector.ConsoleMessageImpl.prototype.isWhitelistedProperty): | |
| (WebInspector.ConsoleMessageImpl.prototype.append): | |
| (WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString): | |
| 2013-04-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13658744> Improve %f, %d, %i formatters for numbers and non-numeric input | |
| Developer tools differ subtly in this area. I like Firefox's behavior | |
| the most, calling parseFloat or parseInt on the argument. We now match | |
| that behavior. | |
| Chrome prints NaN for anything but primitive numbers. Which causes it | |
| to print NaN for Infinity and "1.5". Firebug just prints out everything | |
| like "%s", like we used to before this patch. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.stringFormatter): | |
| (WebInspector.ConsoleMessageImpl.prototype.floatFormatter): | |
| (WebInspector.ConsoleMessageImpl.prototype.integerFormatter): | |
| 2013-04-15 Timothy Hatcher <timothy@apple.com> | |
| Don't call clearHistory or markClean in TextEditor after the first time. | |
| This allows undo/redo in the content browser after editing in style sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Set _initialStringNotSet. | |
| (WebInspector.TextEditor.prototype.set string.update): | |
| Call clearHistory and markClean only if _initialStringNotSet is set. | |
| And delete _initialStringNotSet afterwards. | |
| 2013-04-14 Timothy Hatcher <timothy@apple.com> | |
| Default dockSide to "undocked" if it isn't specified in the query parameters. | |
| This hides the dock buttons again in the iOS Inspector. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2013-04-14 Timothy Hatcher <timothy@apple.com> | |
| Don't allow Command-Z to clear the editor. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set string.update): | |
| Call clearHistory and markClean. | |
| 2013-04-13 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception when inspecting a request that has a "Content-type" | |
| header instead of "Content-Type". | |
| All HTTP headers are case-insensitive, so we need to handle that. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get requestDataContentType): | |
| (WebInspector.Resource.prototype.get encodedSize): | |
| (WebInspector.Resource.prototype.get compressed): | |
| (WebInspector.Resource.prototype.updateForResponse): | |
| (WebInspector.Resource.prototype.increaseSize): | |
| Use valueForCaseInsensitiveKey to fetch headers. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestDataSection): | |
| Set requestDataContentType to "" if it is null so the split() that comes later works. | |
| * UserInterface/Utilities.js: | |
| (Object.prototype.valueForCaseInsensitiveKey): Added. | |
| 2013-04-13 Timothy Hatcher <timothy@apple.com> | |
| Rename "Post Data" to "Request Data" and show the data if it exists, | |
| not just for the "POST" method. | |
| Reviewed by Antoine Quint. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): | |
| (WebInspector.Resource.prototype.get requestData): | |
| (WebInspector.Resource.prototype.get requestDataContentType): | |
| * UserInterface/ResourceClusterContentView.js: | |
| (WebInspector.ResourceClusterContentView.prototype.get requestContentView): | |
| (WebInspector.ResourceClusterContentView.prototype._canShowRequestContentView): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._goToRequestDataClicked): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestDataSection): | |
| Remove a workaround for file data that is no longer needed. | |
| 2013-04-12 Timothy Hatcher <timothy@apple.com> | |
| Prevent a double layout in the content browser navigation bar when switching views. | |
| By default inserted navigation items schedule a layout soon, which prevents multiple consecutive layouts | |
| when inserting many navigation items. Forcing a layout after inserting navigation items causes the | |
| items to be displayed in their final positions and sizes right away. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): | |
| (WebInspector.ContentBrowser.prototype._contentViewNavigationItemsDidChange): | |
| Call updateLayout after changing the navigation bar. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): | |
| Use updateLayoutSoon to coalesce multiple changes. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.updateLayout): Clear the timeout. | |
| 2013-04-12 Timothy Hatcher <timothy@apple.com> | |
| Fix the layout of the selector arrows when components start to collapse. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path-component.show-selector-arrows): Added. | |
| (.hierarchical-path:not(.always-show-last-path-component-separator) > .hierarchical-path-component.show-selector-arrows:last-child): Added. | |
| Specify correct min-widths that include space for the selector arrows. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): Add the show-selector-arrows class name to the element. | |
| 2013-04-12 Timothy Hatcher <timothy@apple.com> | |
| Add the ability to see POST data that isn't in the application/x-www-form-urlencoded format. | |
| <rdar://problem/12667485> REGRESSION (Safari 6): Missing POST request view for non-urlencoded data | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get handleCopyEvent): Added. | |
| Handles passing through the current content view's handleCopyEvent function. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): | |
| (WebInspector.ContentView.isViewable): | |
| Added TextContentView. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.simple > .value .go-to-arrow): Added. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.createPathComponent): Pass true to get double arrows. | |
| (WebInspector.FrameContentView.prototype.showResource): Added. | |
| (WebInspector.FrameContentView.prototype.showSourceCode): Return the view. Use showResource. | |
| (WebInspector.FrameContentView.prototype.showDOMTree): Return the view. | |
| * UserInterface/Images/Request.pdf: Added. | |
| * UserInterface/Images/Response.pdf: Added. | |
| * UserInterface/Main.html: Included new files. | |
| * UserInterface/PathComponentIcons.css: | |
| (.request-icon .icon): Added. | |
| (.response-icon .icon): Added. | |
| * UserInterface/ResourceClusterContentView.js: Added. | |
| (WebInspector.ResourceClusterContentView.createPathComponent): | |
| (WebInspector.ResourceClusterContentView): | |
| (WebInspector.ResourceClusterContentView.prototype.get resource): | |
| (WebInspector.ResourceClusterContentView.prototype.get responseContentView): | |
| (WebInspector.ResourceClusterContentView.prototype.get requestContentView): | |
| (WebInspector.ResourceClusterContentView.prototype.get selectionPathComponents): | |
| (WebInspector.ResourceClusterContentView.prototype.shown): | |
| (WebInspector.ResourceClusterContentView.prototype.closed): | |
| (WebInspector.ResourceClusterContentView.prototype.showRequest): | |
| (WebInspector.ResourceClusterContentView.prototype.showResponse): | |
| (WebInspector.ResourceClusterContentView.prototype._canShowRequestContentView): | |
| (WebInspector.ResourceClusterContentView.prototype._pathComponentForContentView): | |
| (WebInspector.ResourceClusterContentView.prototype._identifierForContentView): | |
| (WebInspector.ResourceClusterContentView.prototype._showContentViewForIdentifier): | |
| (WebInspector.ResourceClusterContentView.prototype._pathComponentSelected): | |
| (WebInspector.ResourceClusterContentView.prototype._resourceTypeDidChange): | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): | |
| Removed code that handled resource type changes and concrete subclasses. | |
| That is now handled by ResourceClusterContentView. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._goToPostDataClicked): Added. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshPostDataSection): | |
| Renamed Size to Data in the Post Data section. Added a go-to arrow. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): Handle ResourceClusterContentView. | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): Ditto. | |
| (WebInspector.ResourceSidebarPanel.prototype.showResourceRequest): Added. | |
| * UserInterface/TextContentView.css: Added. | |
| (.content-view.text > .text-editor): | |
| * UserInterface/TextContentView.js: Added. | |
| (WebInspector.TextContentView): | |
| (WebInspector.TextContentView.prototype.get textEditor): | |
| (WebInspector.TextContentView.prototype.get navigationItems): | |
| (WebInspector.TextContentView.prototype.revealLine): | |
| (WebInspector.TextContentView.prototype.shown): | |
| (WebInspector.TextContentView.prototype.hidden): | |
| (WebInspector.TextContentView.prototype.closed): | |
| (WebInspector.TextContentView.prototype.get supportsSearch): | |
| (WebInspector.TextContentView.prototype.get numberOfSearchResults): | |
| (WebInspector.TextContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.TextContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| (WebInspector.TextContentView.prototype.performSearch): | |
| (WebInspector.TextContentView.prototype.searchCleared): | |
| (WebInspector.TextContentView.prototype.revealPreviousSearchResult): | |
| (WebInspector.TextContentView.prototype.revealNextSearchResult): | |
| (WebInspector.TextContentView.prototype.updateLayout): | |
| (WebInspector.TextContentView.prototype._togglePrettyPrint): | |
| (WebInspector.TextContentView.prototype._textEditorFormattingDidChange): | |
| (WebInspector.TextContentView.prototype._numberOfSearchResultsDidChange): | |
| 2013-04-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13630859> Remote Web Inspector doesn't work for some sites (114447) | |
| RWIInspectorFrontendHost always returns undefined for IFH.loadResourceSynchronously. | |
| Gracefully handle that in our frontend while we either implement it, or create | |
| a new Inspector protocol method to load resources through the backend. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMapManager.js: | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSourceMap): | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype._requestResourceAsynchronously): | |
| 2013-04-11 Timothy Hatcher <timothy@apple.com> | |
| Force CodeMirror editors to be a stacking context to prevent creating many layers | |
| inside when another element overlaps. | |
| <rdar://problem/13608839> REGRESSION: Text in Web Inspector Source Code | |
| view looks heavy (double rendered?) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorOverrides.css: | |
| (.CodeMirror): Added. Set z-index: 0. Position is already set in codemirror.css. | |
| 2013-04-10 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector database code tolerant of quota exceptions. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageUtilities.js: | |
| If we can't open the database it isn't the end of the world, we just will | |
| always generate the images and not cache them for better load times. | |
| 2013-04-10 Timothy Hatcher <timothy@apple.com> | |
| Drop the expected usage down to 5 MB to match the values in RWI and WK1. | |
| This fixes an exception on load for first time users. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ImageUtilities.js: | |
| 2013-04-10 Timothy Hatcher <timothy@apple.com> | |
| Update the Style Attribute in the sidebar when the DOM attribute changes. | |
| Also only update a style rule for external changes if the editor isn't focused. | |
| This prevents external changes from fighting with user edits. | |
| <rdar://problem/13619049> | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._commitChanges): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._editorBlured): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertiesChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): | |
| Simplify when we reset the content to only do it when not focused. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._loadNodeAttributes): | |
| Fire WebInspector.DOMNode.Event.AttributeModified. Remove StyleInvalidated event. | |
| 2013-04-10 Timothy Hatcher <timothy@apple.com> | |
| Make DOMNodeStyles mark as needing refresh in all cases when a stylesheet changes. | |
| The stylesheet change might be a rule that we didn't match yet, so checking existing matched | |
| rules for the stylesheet will not trigger a refresh. This code was added back when refresh was | |
| not as smart, so this is the correct thing to do now. | |
| <rdar://problem/13387359> Undoing selector change does not show selector affecting the page anywhere | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): | |
| Simplify by always calling _markAsNeedsRefresh. | |
| 2013-04-09 Timothy Hatcher <timothy@apple.com> | |
| Indent invalid style properties, not just blank lines. | |
| Also strike out text that is not recognized as a property or comment. | |
| This will now properly indent and strike out these two error cases: | |
| padding; 0; | |
| *line-height: 1; | |
| <rdar://problem/13608848> Checkbox missing for a style property | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| Strike out spans that are not comments or marked properties. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): | |
| Call _markLinesWithCheckboxPlaceholder so the placeholders are added if needed for | |
| lines htat didn't have properties. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): | |
| Remove use of __checkboxMarker, it is not set anymore. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._markLinesWithCheckboxPlaceholder): | |
| Renamed from _markBlankLinesWithCheckboxPlaceholder and taught how to mark only lines that | |
| need marked, and ignores the rest. | |
| 2013-04-08 Timothy Hatcher <timothy@apple.com> | |
| Avoid a console error when viewing Anonymous scripts. | |
| Reviewed by Geoffrey Garen. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): | |
| 2013-04-08 Timothy Hatcher <timothy@apple.com> | |
| Make the Scope Variables details sidebar work when evaluating in the Console. | |
| <rdar://problem/12831236> REGRESSION (6.0.3-Curie): Scope Chain shows nothing while debugging | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh.delayedWork): Clear the timeout. | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh): Set a timeout. | |
| 2013-04-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Copy PrettyPrinter updates into UserInterface to enact the changes. | |
| Unreviewed, just moving reviewed code between directories. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/External/CodeMirror/javascript.js: | |
| * UserInterface/Formatter.js: | |
| (Formatter.prototype._handleToken): | |
| 2013-04-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13593779> Pretty printer should line "case" and "default" with "switch" | |
| Dedent before case/default and indent after, so it lines up with the switch. | |
| Reviewed by Timothy Hatcher. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| * Tools/PrettyPrinting/index.html: | |
| * Tools/PrettyPrinting/js-tests/switch-case-default-expected.js: Added. | |
| * Tools/PrettyPrinting/js-tests/switch-case-default.js: Added. | |
| 2013-04-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13584713> Pretty printer should gracefully handle single line if/else/for/do/while blocks | |
| This adds indentation support for single statement blocks. This had a | |
| pretty big performance cost pretty printing jquery.min.js (20ms), but | |
| I think it is worth it. In the inspector itself, I did not see pretty | |
| printing actually taking longer. I'll continue to look at performance. | |
| Reviewed by Timothy Hatcher. | |
| * Tools/PrettyPrinting/Formatter.js: | |
| (Formatter.prototype._handleToken): | |
| Let the Code modify state before / after the token is consumed. | |
| Let the formatters specify multiple dedents at once. | |
| * Tools/PrettyPrinting/FormatterDebug.js: | |
| (Formatter.prototype.debug): | |
| In JavaScript print out the previous lexical state. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| Pretty print a good chunk of JavaScript single statement blocks and | |
| if/else chains. | |
| * Tools/PrettyPrinting/javascript.js: | |
| Update to "near" trunk CodeMirror JavaScript. The most recent commit | |
| causes issues. | |
| * Tools/PrettyPrinting/index.html: | |
| * Tools/PrettyPrinting/js-tests/block-comment-expected.js: Added. | |
| * Tools/PrettyPrinting/js-tests/block-comment.js: Added. | |
| * Tools/PrettyPrinting/js-tests/single-statement-blocks-expected.js: Added. | |
| * Tools/PrettyPrinting/js-tests/single-statement-blocks.js: Added. | |
| Added some micro-tests for recent pretty printing changes. | |
| 2013-04-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Add a little test running harness to the PrettyPrinter tool. No tests yet. | |
| Reviewed by Timothy Hatcher. | |
| * Tools/PrettyPrinting/index.html: | |
| 2013-04-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Update the PrettyPrinting Tool to match UserInterface. | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/codemirror.js: | |
| (window.CodeMirror): | |
| * Tools/PrettyPrinting/javascript.js: | |
| 2013-04-08 Timothy Hatcher <timothy@apple.com> | |
| Enable completions for resource content views. | |
| <rdar://problem/13598062> | |
| Reviewed by Antoine Quint. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Hook up a WebInspector.CodeMirrorCompletionController. | |
| 2013-04-08 Timothy Hatcher <timothy@apple.com> | |
| Delay computing suggestions for 250ms to keep from slowing down typing. | |
| <rdar://problem/13598014> CSS completions can slow down typing | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): | |
| Clear the typing delay timeout. | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleChange): | |
| Set _ignoreNextCursorActivity so hideCompletions isn't called. | |
| 2013-04-08 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13597681> Layers sidebar panel may flash popovers with stale content | |
| We only present the popover when the data grid node hasn't changed | |
| between the time we called into the backend and the time the callback | |
| is called. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._showPopoverForSelectedNode): | |
| 2013-04-08 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12892280> Layer tree panel data grid should refresh less frequently when layers for nodes are recreated | |
| Provide a custom DataGrid subclass for the Layers panel where we | |
| use CSS transforms to update the position of data grid nodes | |
| instead of relying on DOM order so that we can avoid DOM thrashing | |
| and retain scroll position for rapidly changing content. We also | |
| set the width of "Paints" and "Memory" columns for a nicely | |
| consistent formatting. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DetailsSectionDataGridRow.js: | |
| (WebInspector.DetailsSectionDataGridRow.prototype.set dataGrid): | |
| Perform a quick return in case the new data grid is the same | |
| as the previous in order to remove the possibility of appending | |
| the data grid's element if it was already the current data grid. | |
| * UserInterface/LayerTreeDataGrid.js: Added. | |
| (WebInspector.LayerTreeDataGrid): | |
| Initialize the DataGrid with a custom set of columns and set the | |
| width of the "Paints" and "Memory" columns. | |
| (WebInspector.LayerTreeDataGrid.prototype.insertChild): | |
| (WebInspector.LayerTreeDataGrid.prototype.removeChild): | |
| Override these DataGrid methods to perform our custom layout of | |
| cells when a child is added or removed. | |
| (WebInspector.LayerTreeDataGrid.prototype.setChildren): | |
| Public API used to set the list of children data grid nodes for | |
| this data grid. We compare this new list to the previous list | |
| and only remove / add the nodes that need to be, avoiding having | |
| to remove the entire set of children to update the nodes list. | |
| (WebInspector.LayerTreeDataGrid.prototype._updateChildren): | |
| Position the children data grid nodes using CSS transforms instead | |
| of DOM order. We also manually set the sibling relationship there | |
| since it can no longer be accomplished in insertChild() or | |
| removeChild() calls. | |
| (WebInspector.LayerTreeDataGrid.prototype._recalculateSiblings): | |
| Make this method a no-op since we manually perform the same task in | |
| _updateChildren(). | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode): | |
| Add a new _outlets private ivar we use to stash the DOM elements | |
| we'll need to update when the node's data changes. | |
| (WebInspector.LayerTreeDataGridNode.prototype.createCells): | |
| Override this DataGridNode API in order to add a flag that cells | |
| were created which we'll use as a flag to allow the update of a | |
| cell's data in the data setter. | |
| (WebInspector.LayerTreeDataGridNode.prototype.createCellContent): | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| (WebInspector.LayerTreeDataGridNode.prototype.get data): | |
| (WebInspector.LayerTreeDataGridNode.prototype.set data): | |
| Custom data setter as the default version would completely trash | |
| the DOM tree and replace it with a whole new set of elements to | |
| update the data. We choose a more incremental approach here since | |
| individual fields for this node may change (paint count being the | |
| most likely). | |
| (WebInspector.LayerTreeDataGridNode.prototype._makeOutlet): | |
| (WebInspector.LayerTreeDataGridNode.prototype._makeNameCell): | |
| Prepare the DOM elements used to present the node's data. Many | |
| elements for the name cell are dynamically added and removed in | |
| _updateNameCellData(). | |
| (WebInspector.LayerTreeDataGridNode.prototype._updateCell): | |
| (WebInspector.LayerTreeDataGridNode.prototype._updateNameCellData): | |
| Update the information on outlets or their very availability based | |
| on the current data and represented layer. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype.shown): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.hidden): | |
| Remove the auto-sizing of data grid columns as we're not setting them | |
| to be constant for a more consistent look. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection): | |
| Instantiate our new LayerTreeDataGrid class. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid): | |
| Use the custom setChildren() API on LayerTreeDataGrid to change the | |
| children order. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid): | |
| * UserInterface/Main.html: | |
| Add LayerTreeDataGrid.js. | |
| 2013-04-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13584696> Pretty printer should preserve whitespace in multi-line comments | |
| Update CodeMirror to trunk to get a few recent fixes. | |
| This update includes project wide tailing whitespace and tab removal | |
| which is why so many files were changed. | |
| Rubber-stamped by Timothy Hatcher. | |
| * UserInterface/External/CodeMirror/clojure.js: | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| * UserInterface/External/CodeMirror/coffeescript.js: | |
| * UserInterface/External/CodeMirror/javascript.js: | |
| * UserInterface/External/CodeMirror/less.js: | |
| * UserInterface/External/CodeMirror/matchbrackets.js: | |
| * UserInterface/External/CodeMirror/overlay.js: | |
| * UserInterface/External/CodeMirror/sql.js: | |
| * UserInterface/External/CodeMirror/xml.js: | |
| 2013-04-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13043550> REGRESSION: Scrollbar renders behind position: sticky elements in the Web Inspector | |
| Give the Sidebar Panels a stacking context to work around the issue. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Sidebar.css: | |
| (.sidebar > .panel): | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Add a small script to update the Tools/PrettyPrinting directory. | |
| My workflow for fixing a PrettyPrinting bug is to first update the Tools | |
| directory with exact replicas of files in UserInterface. Make changes | |
| and test with the debug page, and then transfer the files back to the | |
| inspector. This script helps automate those steps. | |
| Reviewed by Cody Krieger. | |
| * Scripts/update-codemirror-resources.rb: | |
| * Scripts/update-pretty-printer.rb: Added. | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Update the PrettyPrinting Tool with a few Debug changes. | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/index.html: | |
| * Tools/PrettyPrinting/FormatterDebug.js: | |
| (.pad): | |
| (.debugToken): | |
| (Formatter.prototype.debug): | |
| Output null, undefined, or 'string' for tokens. | |
| Previously null and undefined output as '-'. | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Update the PrettyPrinting Tool with CodeMirror CSS changes. | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/codemirror-additions.css: Added. | |
| * Tools/PrettyPrinting/codemirror.css: | |
| * Tools/PrettyPrinting/index.html: | |
| 2013-04-05 Timothy Hatcher <timothy@apple.com> | |
| Tweak Web Inspector's image cache database. | |
| We only want to keep the image data around for the first use. These | |
| images are typically only used in one place. This keeps performance | |
| good during page load and frees memory that typically won't be reused. | |
| Also add transaction error logging and a better expected database size. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageUtilities.js: | |
| (_logSQLTransactionError): | |
| (_prefetchCachedImagesAndUpdate): | |
| (.restoreImageData): | |
| (restoreImageFromStorage): | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Update the PrettyPrinting Tool with new formatter changes. | |
| Also some tweaks so that the Tools files are identical to the ones in | |
| the actual Web Inspector (UserInterface). | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| * Tools/PrettyPrinting/Formatter.js: | |
| (Formatter.prototype.format): | |
| (Formatter.prototype._handleToken): | |
| (Formatter.prototype._handleEmptyLine): | |
| * Tools/PrettyPrinting/FormatterContentBuilder.js: | |
| (FormatterContentBuilder.prototype.appendNewline): | |
| (FormatterContentBuilder.prototype.appendMultipleNewlines): | |
| (FormatterContentBuilder.prototype.removeLastNewline): | |
| (FormatterContentBuilder.prototype._addFormattedLineEnding): | |
| * Tools/PrettyPrinting/FormatterDebug.js: Added. | |
| (Formatter.prototype.debug): | |
| * Tools/PrettyPrinting/Utilities.js: Added. | |
| * Tools/PrettyPrinting/codemirror.js: | |
| * Tools/PrettyPrinting/css.js: | |
| * Tools/PrettyPrinting/index.html: | |
| * Tools/PrettyPrinting/javascript.js: | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Win back performance in pretty-printing large files | |
| With preserving newlines we lost a few ms. This wins back at | |
| least the same amount and a bit more on JavaScript (2-3ms). | |
| Checking if the current token is a comment is a very common | |
| in our pretty printers. Only perform the work once, and pass | |
| the result around as needed to prevent duplicated work. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/Formatter.js: | |
| (Formatter.prototype._handleToken): | |
| 2013-04-05 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13582023> Web Inspector removes blank lines in my JS when pretty printing | |
| When pretty-printing already pretty code we did a poor job of preserving | |
| the nice extra whitespace the original code had. This preserves the empty | |
| (whitespace only) lines in the original code. | |
| Because our pretty printer sometimes adds multiple newlines, like in CSS | |
| after each rule, we don't need to add yet another newline to just preserve | |
| a blank line from the original content. Handle that gracefully. | |
| This introduces a minor performance regression (1-3ms in large content) | |
| but I think it is well worth it considering the results. Much prettier! | |
| JavaScript Test: | |
| Foo.prototype.f = function() { | |
| // ... | |
| } | |
| Foo.prototype.g = function() { | |
| // ... | |
| } | |
| CSS Test: | |
| /* comment one */ | |
| /* comment two */ | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Formatter.js: | |
| (Formatter.prototype.format): | |
| (Formatter.prototype._handleToken): | |
| (Formatter.prototype._handleEmptyLine): | |
| Call handleEmptyLine for whitespace only lines, and force | |
| append a newline unless the builder just had multiple. | |
| * UserInterface/FormatterContentBuilder.js: | |
| (FormatterContentBuilder): | |
| (FormatterContentBuilder.prototype.appendNewline): | |
| (FormatterContentBuilder.prototype.appendMultipleNewlines): | |
| Helper for appending multiple newlines, to set some extra state. | |
| 2013-04-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13583718> Pretty printing should not move comments to the end of the previous line | |
| Previously we removed newlines before comments if they were after a | |
| semicolon. This was intended to keep comments on the same line as code. | |
| This could backfire if the comment was really on actually on the next | |
| line. So be more specific, and don't remove the previous newline if | |
| the comment is the first token on a line. | |
| JavaScript Test: | |
| function() { | |
| var a; | |
| // test | |
| } | |
| CSS Test: | |
| a { | |
| color: red; | |
| /* test */ | |
| } | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/Formatter.js: | |
| (Formatter.prototype.format): | |
| (Formatter.prototype._handleToken): | |
| 2013-04-05 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13472300> Layers in sidebar panel should use iconography | |
| Refreshing the look of the Layers sidebar panel data grid nodes | |
| to use icons to identify the kind of layers presented (element, | |
| pseudo-element or reflection). Also, we mark the pseudo-element | |
| part of the CSS selector by displaying it in lighter text as well | |
| as showing a " Ñ Reflection" extra label in the case of reflections. | |
| Finally, we also trim the text in the CSS selector label and shorten | |
| it to make room for the go-to arrow button should it be visible | |
| when hovering the data grid node. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Images/PseudoElement.pdf: Added. | |
| * UserInterface/Images/Reflection.pdf: Added. | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode.prototype.createCellContent): | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| (WebInspector.LayerTreeDataGridNode.prototype._createNodeCellContent): | |
| (WebInspector.LayerTreeDataGridNode.prototype._goToArrowWasClicked): | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree.panel .data-grid table.data): | |
| (.layer-tree.panel .data-container tr): | |
| (.layer-tree.panel .data-container td > div): | |
| (.layer-tree.panel .data-container .name-column): | |
| (.layer-tree.panel .data-container .name-column .icon): | |
| (.layer-tree.panel .data-container tr.reflection .name-column .icon): | |
| (.layer-tree.panel .data-container tr.pseudo-element .name-column .icon): | |
| (.layer-tree.panel .data-container .name-column .label): | |
| (.layer-tree.panel .data-container tr:hover .name-column .label): | |
| (.layer-tree.panel .data-container .name-column .reflection): | |
| (.layer-tree.panel .data-container tr.selected .name-column .reflection): | |
| (.layer-tree.panel .data-container .go-to-arrow): | |
| (.layer-tree.panel .data-container tr:hover .go-to-arrow): | |
| 2013-04-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13573165> Pressing Esc in a readOnly editor should still focus the quick console | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.isEventTargetAnEditableField): | |
| 2013-04-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13580154> DOMTreeOutline.js:504: JS ERROR: TypeError: 'true' is not a function (evaluating 'this._contextMenuCallback(contextMenu, node)' | |
| DOMTreeOutline constructors were passing 3 booleans. In the case of | |
| outlines in the Console it was passing "true" expecting that to provide | |
| a "Reveal Element" context menu item, but that mis-matched the | |
| constructor. Fix the error, and add back the context menu item. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): | |
| Update parameters. | |
| (WebInspector.DOMTreeOutline.prototype.revealElement): | |
| (WebInspector.DOMTreeOutline.prototype._populateContextMenu): | |
| Append a "Reveal Element" context menu item if needed. | |
| * UserInterface/ObjectPropertiesSection.js: | |
| (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): | |
| Update the string. We don't have a panel, the nav bar labels this "DOM Tree". | |
| 2013-04-04 Joseph Pecoraro <pecoraro@apple.com> | |
| ERROR URIError: URI error in FrameResourceManager.prototype.resourceForScript | |
| decodeURI can throw a URIError, e.g. decodeURI("%"). Protect against | |
| this in FrameResourceManager. This method is meant to work with both | |
| already decoded and encoded URIs. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceForScript): | |
| Wrap the code with decodeURI in a try/catch. | |
| 2013-04-04 Timothy Hatcher <timothy@apple.com> | |
| Fix opening the Web Inspector in Production builds. | |
| A function declaration was pushed up next to a parenthesis when minified. | |
| This made the parser think we were trying to make a call. Adding a semicolon | |
| is all we need to make things work again when combined and minified. | |
| <rdar://problem/13577591> REGRESSION (r50120-50124): Can't open Web Inspector | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/MIMETypeUtilities.js: | |
| (WebInspector.fileExtensionForURL): | |
| (WebInspector.mimeTypeForFileExtension): | |
| 2013-04-04 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13570821> Reasons for compositing popover should adjust position if inspector window resizes | |
| Allow for popovers to have their target frame updated independently | |
| of their content so we can efficiently update their position as the | |
| element for which a popover is presented changes position. Now that | |
| we have this support, we update the popover presentation when the | |
| window size changes and a popover is visible in the Layers sidebar | |
| panel. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype._showEditBreakpointPopover): | |
| Adopt the updated Popover API. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel): | |
| Track window resize events so that we may update the popover | |
| presentation as it changes. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._windowResized): | |
| Update the popover presentation in case there is a visible popover. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._showPopoverForSelectedNode): | |
| Use the new _updatePopoverForSelectedNode() method as the callback. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updatePopoverForSelectedNode): | |
| Adopt the updated Popover API and only set the popover's content | |
| should one be provided, ie. when the method is called as callback | |
| to _contentForPopover(). | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover): | |
| New private ivars to track some popover presentation state. | |
| (WebInspector.Popover.prototype.get visible): | |
| New public property to let clients check on popover visibility. | |
| (WebInspector.Popover.prototype.set content): | |
| (WebInspector.Popover.prototype.present): | |
| New public property and method signature to let clients set the | |
| content of the popover independently of its presentation attributes. | |
| (WebInspector.Popover.prototype._update): | |
| New private method called to update the presentation state | |
| of the popover and basically the old content of the present() | |
| method with use of the presentation ivars instead of method | |
| arguments and some optimizations to check that we only update | |
| the content and draw the canvas background should they have | |
| changed. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| Adopt the updated Popover API. | |
| 2013-04-04 Timothy Hatcher <timothy@apple.com> | |
| Make ContentViewContainer robust against null/undefined elements in contentView.scrollableElements. | |
| DatabaseTableContentView can return a null element when the table is empty, and this causes exceptions. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype._saveScrollPositionsForContentView): | |
| (WebInspector.ContentViewContainer.prototype._restoreScrollPositionsForContentView): | |
| 2013-04-04 Timothy Hatcher <timothy@apple.com> | |
| Don't use localStorage to cache generated images in the Web Inspector. | |
| This migrates ImageUtilities off localStorage to a SQL database. | |
| <rdar://problem/13574226> Web Inspector breaks when file:/// localStorage hits 5MB limit | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/ImageUtilities.js: | |
| (_devicePixelRatioChanged): | |
| (_registerGeneratedImageUpdateFunction): | |
| (_logSQLError): | |
| (_prefetchCachedImagesAndUpdate.complete): | |
| (_prefetchCachedImagesAndUpdate._generatedImageCacheDatabase.transaction): | |
| (_prefetchCachedImagesAndUpdate): | |
| (restoreImageFromStorage): | |
| (generateColoredImagesForCSS.restoreImages): | |
| (generateColoredImagesForCSS.restoreImages.restoreActiveImages): | |
| (generateColoredImagesForCSS.restoreImage): | |
| (generateColoredImagesForCSS.update): | |
| (generateColoredImagesForCSS.generateImage): | |
| (generateEmbossedImages): | |
| (generateEmbossedImages.generateImages): | |
| (generateEmbossedImages.generateImages.generateActiveImages): | |
| 2013-04-04 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13570779> Reasons for compositing popover in layers sidebar is poorly aligned with selected datagrid row | |
| Also apply padding to the target frame size, not just the origin, and | |
| adjust the padding down to 2 to match the padding used for breakpoints. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._showPopoverForSelectedNode): | |
| 2013-04-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13573798> REGRESSION: CodeMirror editor doesn't refresh when split console is hidden and more of the content view is visible | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype.consoleLogVisibilityChanged): | |
| Trigger a DidResize event because the console would have changed | |
| its visible size. | |
| 2013-04-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13474739> Respect sourcesContent in SourceMaps for SourceMapResources | |
| If the resource's contents are available via the Source Map's | |
| sourcesContent array, then use them. Otherwise, go the normal path of | |
| downloading the resource. Because neither path can get the MIME type of | |
| the resource right now, fallback to trying to determine the MIME type | |
| from the resource's file extension. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/MIMETypeUtilities.js: Added. | |
| (WebInspector.fileExtensionForURL): | |
| (WebInspector.mimeTypeForFileExtension): | |
| Helpers for extensions and MIME types. | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype._requestResourceAsynchronously): | |
| Check for embedded sourcesContent content, and determine the MIME type | |
| from the file extension. | |
| * UserInterface/Resource.js: | |
| Be sure to give types to some of the MIME types for CodeMirror supported | |
| types, which may show up as SourceMap sources. | |
| 2013-04-03 Joseph Pecoraro <pecoraro@apple.com> | |
| ERROR: console.assert(alternateImage) in ToggleButtonNavigationItem.js:4 | |
| Remove assert that there must be an alternateImage. The undock button | |
| does not have an alternate image, and this assert would trigger each | |
| time the inspector was opened. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| (WebInspector.ToggleButtonNavigationItem): | |
| 2013-04-03 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-04-03 Timothy Hatcher <timothy@apple.com> | |
| Add switch to activate / deactivate all breakpoints. | |
| <rdar://problem/11329057> REGRESSION (Safari 6): Switch to activate / deactivate all | |
| breakpoints is missing (debugger) | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype.get resolved): | |
| Check DebuggerManager.breakpointsEnabled. This is the easiest approach to get the gray | |
| icons for breakpoints in all the right places without adding checks at all call sites. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.get breakpointsEnabled): | |
| (WebInspector.DebuggerManager.prototype.set breakpointsEnabled): | |
| (WebInspector.DebuggerManager.prototype._updateBreakOnExceptionsState): | |
| Check the breakpointsEnabled setting when updating the break on exception state. | |
| * UserInterface/DebuggerSidebarPanel.css: | |
| (.sidebar > .panel.debugger .breakpoint-toggle): Added. | |
| (.sidebar > .panel.debugger .breakpoint-toggle.enabled): Added. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointsToggleButtonClicked): | |
| Added a button to the Breakpoints section header. | |
| 2013-04-03 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13566082> DOMTreeManager.highlightRect() does not take scrolling into account | |
| Add support for the new "usePageCoordinates" argument to DOM.highlightRect() | |
| and set it to true when highlighting the bounds of generated layers. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype.highlightRect): | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._highlightSelectedNode): | |
| 2013-04-03 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13105224> Reflect data grid timeline filters in the Timeline overview | |
| Apply the filtering of records directly into the timelineOverviewRecordsWithType() | |
| method which is the method used by the TimelineOverview to gather data. Additionally, | |
| we now update the content of the TimelineOverview when the filters applied to one of | |
| the data grids change such that the timeline overview is kept in sync. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.timelineOverviewRecordsWithType): | |
| (WebInspector.TimelinesContentView.prototype._dataGridFiltersDidChange): | |
| 2013-04-03 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13557373> Layers panel doesn't know how to account for anonymous layers | |
| Handle the new "isAnonymous" property on the protocol and the renamed | |
| "pseudoElement" property. We also format use of pseudo-elements better | |
| and handle the somewhat unlikely possibility that we would deal with | |
| layers with unknown nodes. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| New localized string for "Unknown node". | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode.prototype.createCellContent): | |
| Update the "no-node" class on the data grid node's element. | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| Set an "Unknown node" label for layers with an unknown node, which | |
| shouldn't really happen, but we should be prepared for the possibility. | |
| Seeing this message means that the agent should be taught how to deal | |
| with a probably edge case. We also update the code to deal with the | |
| "pseudoElement" property instead of "pseudoClass" to match the protocol | |
| change. Finally, we also update the "no-node" class on the data grid's node. | |
| (WebInspector.LayerTreeDataGridNode.prototype._updateDOMNodeAvailability): | |
| New method to update the "no-node" class on the data grid's node so | |
| that we may hide the go-to arrow button in the case where there is | |
| no associated node. | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree.panel .data-grid tr.no-node .go-to-arrow): | |
| Hide the go-to arrow button in the case where there is no associated node. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._highlightSelectedNode): | |
| Also use highlightRect() in the case where the layer is anonymous. | |
| 2013-04-02 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13548470> REGRESSION: Web inspector hung after searching for "swf" | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._scrollIntoViewCentered): | |
| Be more careful providing a center margin when the text size and editor | |
| height can be fractional. If the margin is greater than half the size of | |
| the editor, CodeMirror gets stuck in an infinite loop. | |
| 2013-04-02 Joseph Pecoraro <pecoraro@apple.com> | |
| ERROR: TypeError: 'undefined' is not an object (evaluating 'this._profileView.showTimeAsPercent.value') | |
| When selecting a CSS Profile, displayProfile could trigger from the | |
| superclass constructor before the showTimeAsPercent Setting was | |
| initialized, causing this error. ProfileView's are assumed to have | |
| this property, and the ProfileView constructor had an unused | |
| parameter, which looks like it was intended for this purpose. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): | |
| * UserInterface/ProfileView.js: | |
| (WebInspector.ProfileView): | |
| 2013-04-02 Timothy Hatcher <timothy@apple.com> | |
| Update toolbar layout for recent flex box changes. | |
| <rdar://problem/13556024> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Toolbar.css: | |
| (.toolbar .item-section): Added min-width: -webkit-min-content. | |
| min-width now defaults to 0, but we need the sections to stop at the | |
| content size so the JavaScript layout function can do the right thing. | |
| 2013-04-02 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13545256> Automatic selection of a CSS profile upon finishing recording fails to show any content | |
| Make sure we set the "showAsTimePercent" property before calling super since | |
| it may be used by the generated WebInspector.CSSSelectorDataGridNode in | |
| displayProfile() which would be called in the super call in the case where | |
| the view is created as the profile finishes recording. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): | |
| 2013-04-01 Timothy Hatcher <timothy@apple.com> | |
| Fix the icons for the exception breakpoints. | |
| <rdar://problem/13552326> REGRESSION: Exception breakpoints are missing custom icons | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.ExceptionIconStyleClassName): Added. | |
| This property was expected to exist but got removed at some point. | |
| BreakpointTreeElement property handled undefined and used the generic icon. | |
| 2013-04-01 Timothy Hatcher <timothy@apple.com> | |
| Compressed PNGs with pngcrush and further reduced the size of some PDFs by re-exporting them. Removed some unused images too. | |
| This goes from 2.1 MB of images down to 1.2 MB. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/Images/ApplicationCache.png: | |
| * UserInterface/Images/ApplicationCache@2x.png: | |
| * UserInterface/Images/ApplicationCacheManifest.png: | |
| * UserInterface/Images/ApplicationCacheManifest@2x.png: | |
| * UserInterface/Images/Breakpoint.png: | |
| * UserInterface/Images/Breakpoint@2x.png: | |
| * UserInterface/Images/BreakpointInactive.png: | |
| * UserInterface/Images/BreakpointInactive@2x.png: | |
| * UserInterface/Images/ClippingGeneric.png: | |
| * UserInterface/Images/ClippingGeneric@2x.png: | |
| * UserInterface/Images/ClippingJS.png: | |
| * UserInterface/Images/ClippingJS@2x.png: | |
| * UserInterface/Images/Close.pdf: | |
| * UserInterface/Images/Colors.png: | |
| * UserInterface/Images/Colors@2x.png: | |
| * UserInterface/Images/Cookie.png: | |
| * UserInterface/Images/Cookie@2x.png: | |
| * UserInterface/Images/Crosshair.pdf: | |
| * UserInterface/Images/DOMCharacterData.pdf: | |
| * UserInterface/Images/DOMComment.pdf: | |
| * UserInterface/Images/DOMDocument.pdf: | |
| * UserInterface/Images/DOMDocumentType.pdf: | |
| * UserInterface/Images/DOMElement.pdf: | |
| * UserInterface/Images/DOMNode.pdf: | |
| * UserInterface/Images/DOMTextNode.pdf: | |
| * UserInterface/Images/DOMTree.pdf: | |
| * UserInterface/Images/Database.png: | |
| * UserInterface/Images/Database@2x.png: | |
| * UserInterface/Images/DatabaseTable.png: | |
| * UserInterface/Images/DatabaseTable@2x.png: | |
| * UserInterface/Images/DisclosureTriangleSmallClosed.pdf: | |
| * UserInterface/Images/DisclosureTriangleSmallOpen.pdf: | |
| * UserInterface/Images/DockBottom.pdf: | |
| * UserInterface/Images/DockRight.pdf: | |
| * UserInterface/Images/DocumentCSS.png: | |
| * UserInterface/Images/DocumentCSS@2x.png: | |
| * UserInterface/Images/DocumentFont.png: | |
| * UserInterface/Images/DocumentFont@2x.png: | |
| * UserInterface/Images/DocumentGeneric.png: | |
| * UserInterface/Images/DocumentGeneric@2x.png: | |
| * UserInterface/Images/DocumentImage.png: | |
| * UserInterface/Images/DocumentImage@2x.png: | |
| * UserInterface/Images/DocumentJS.png: | |
| * UserInterface/Images/DocumentJS@2x.png: | |
| * UserInterface/Images/DocumentMarkup.png: | |
| * UserInterface/Images/DocumentMarkup@2x.png: | |
| * UserInterface/Images/EventListener.pdf: | |
| * UserInterface/Images/Exception.pdf: | |
| * UserInterface/Images/FilterFieldGlyph.pdf: | |
| * UserInterface/Images/FolderGeneric.png: | |
| * UserInterface/Images/FolderGeneric@2x.png: | |
| * UserInterface/Images/Function.pdf: | |
| * UserInterface/Images/HierarchicalNavigationItemChevron.pdf: | |
| * UserInterface/Images/InstructionPointer.png: | |
| * UserInterface/Images/InstructionPointer@2x.png: | |
| * UserInterface/Images/LeftSidebarClose.pdf: Removed. | |
| * UserInterface/Images/LeftSidebarOpen.pdf: Removed. | |
| * UserInterface/Images/LessColumns.pdf: | |
| * UserInterface/Images/LocalStorage.png: | |
| * UserInterface/Images/LocalStorage@2x.png: | |
| * UserInterface/Images/Log.png: | |
| * UserInterface/Images/Log@2x.png: | |
| * UserInterface/Images/MoreColumns.pdf: | |
| * UserInterface/Images/NavigationItemAngleBrackets.pdf: | |
| * UserInterface/Images/NavigationItemBug.pdf: | |
| * UserInterface/Images/NavigationItemCurleyBraces.pdf: | |
| * UserInterface/Images/NavigationItemFile.pdf: | |
| * UserInterface/Images/NavigationItemLayers.pdf: | |
| * UserInterface/Images/NavigationItemLog.pdf: | |
| * UserInterface/Images/NavigationItemRuler.pdf: Removed. | |
| * UserInterface/Images/NavigationItemStopwatch.pdf: | |
| * UserInterface/Images/NavigationItemStorage.pdf: | |
| * UserInterface/Images/Network.png: | |
| * UserInterface/Images/Network@2x.png: | |
| * UserInterface/Images/NetworkBarBlue.png: | |
| * UserInterface/Images/NetworkBarBlue@2x.png: | |
| * UserInterface/Images/NetworkBarGray.png: | |
| * UserInterface/Images/NetworkBarGray@2x.png: | |
| * UserInterface/Images/NetworkBarGreen.png: | |
| * UserInterface/Images/NetworkBarGreen@2x.png: | |
| * UserInterface/Images/NetworkBarLabelCalloutLeft.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutRight.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.pdf: | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteRight.pdf: | |
| * UserInterface/Images/NetworkBarOrange.png: | |
| * UserInterface/Images/NetworkBarOrange@2x.png: | |
| * UserInterface/Images/NetworkBarPurple.png: | |
| * UserInterface/Images/NetworkBarPurple@2x.png: | |
| * UserInterface/Images/NetworkBarRed.png: | |
| * UserInterface/Images/NetworkBarRed@2x.png: | |
| * UserInterface/Images/NetworkBarWhiteFlat.png: | |
| * UserInterface/Images/NetworkBarWhiteFlat@2x.png: | |
| * UserInterface/Images/NetworkBarYellow.png: | |
| * UserInterface/Images/NetworkBarYellow@2x.png: | |
| * UserInterface/Images/NetworkHollowBarBlue.png: | |
| * UserInterface/Images/NetworkHollowBarBlue@2x.png: | |
| * UserInterface/Images/NetworkHollowBarGray.png: | |
| * UserInterface/Images/NetworkHollowBarGray@2x.png: | |
| * UserInterface/Images/NetworkHollowBarGreen.png: | |
| * UserInterface/Images/NetworkHollowBarGreen@2x.png: | |
| * UserInterface/Images/NetworkHollowBarOrange.png: | |
| * UserInterface/Images/NetworkHollowBarOrange@2x.png: | |
| * UserInterface/Images/NetworkHollowBarPurple.png: | |
| * UserInterface/Images/NetworkHollowBarPurple@2x.png: | |
| * UserInterface/Images/NetworkHollowBarRed.png: | |
| * UserInterface/Images/NetworkHollowBarRed@2x.png: | |
| * UserInterface/Images/NetworkHollowBarYellow.png: | |
| * UserInterface/Images/NetworkHollowBarYellow@2x.png: | |
| * UserInterface/Images/Pause.pdf: | |
| * UserInterface/Images/Profile.png: | |
| * UserInterface/Images/Profile@2x.png: | |
| * UserInterface/Images/Recording.png: | |
| * UserInterface/Images/RecordingHovered.png: | |
| * UserInterface/Images/RecordingHovered@2x.png: | |
| * UserInterface/Images/RecordingStopped.png: | |
| * UserInterface/Images/RecordingStopped@2x.png: | |
| * UserInterface/Images/ResultLine.pdf: | |
| * UserInterface/Images/Resume.pdf: | |
| * UserInterface/Images/RightSidebarClose.pdf: Removed. | |
| * UserInterface/Images/RightSidebarOpen.pdf: Removed. | |
| * UserInterface/Images/Script.png: | |
| * UserInterface/Images/Script@2x.png: | |
| * UserInterface/Images/SessionStorage.png: | |
| * UserInterface/Images/SessionStorage@2x.png: | |
| * UserInterface/Images/SourceCode.pdf: | |
| * UserInterface/Images/StepInto.pdf: | |
| * UserInterface/Images/StepOut.pdf: | |
| * UserInterface/Images/StepOver.pdf: | |
| * UserInterface/Images/Stopwatch.png: | |
| * UserInterface/Images/Stopwatch@2x.png: | |
| * UserInterface/Images/StyleRuleAuthor.pdf: | |
| * UserInterface/Images/StyleRuleInherited.pdf: | |
| * UserInterface/Images/StyleRuleInheritedElement.pdf: | |
| * UserInterface/Images/StyleRuleInspector.pdf: | |
| * UserInterface/Images/StyleRuleUser.pdf: | |
| * UserInterface/Images/StyleRuleUserAgent.pdf: | |
| * UserInterface/Images/TimelineBarBlue.png: | |
| * UserInterface/Images/TimelineBarBlue@2x.png: | |
| * UserInterface/Images/TimelineBarOrange.png: | |
| * UserInterface/Images/TimelineBarOrange@2x.png: | |
| * UserInterface/Images/TimelineBarPurple.png: | |
| * UserInterface/Images/TimelineBarPurple@2x.png: | |
| * UserInterface/Images/ToggleArrowDown.pdf: Removed. | |
| * UserInterface/Images/ToggleArrowUp.pdf: Removed. | |
| * UserInterface/Images/Undock.pdf: | |
| * UserInterface/Images/UserInputPrompt.pdf: | |
| * UserInterface/Images/UserInputPromptPrevious.pdf: | |
| * UserInterface/Images/UserInputResult.pdf: | |
| 2013-03-31 Timothy Hatcher <timothy@apple.com> | |
| Allow changing Web Inspector dock sides without undocking first. | |
| Holding option will change the undock button to the opposite attachment side. When clicked | |
| the button will change to the other attachment side. Holding option with allow undock. This | |
| keeps the last used option available if the user hardly undocks but frequently changes sides. | |
| rdar://problem/13543127 | |
| Reviewed by Antoine Quint. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Images/Dock.pdf: Removed. | |
| * UserInterface/Images/DockBottom.pdf: Added. | |
| * UserInterface/Images/DockRight.pdf: Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.loaded): Added key event listeners. | |
| (WebInspector.contentLoaded): Use ToggleControlToolbarItem for undock button. | |
| (WebInspector._windowKeyDown): Added. | |
| (WebInspector._windowKeyUp): Added. | |
| (WebInspector._undock): | |
| (WebInspector._updateDockNavigationItems): | |
| Set and check toggled state for undock button and do the right thing. | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| (WebInspector.ToggleButtonNavigationItem.prototype.set alternateToolTip): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.set alternateImage): Added. | |
| 2013-04-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13492413> Improve line number subtitle for SourceMap Breakpoints in Debugger sidebar | |
| If a breakpoint is in a SourceMapResource, there is a subtitle showing | |
| the original location. If the original location is in a formatted file | |
| show the italics formatted location that you would jump to. Don't show | |
| a subtitle for breakpoints in formatted resources, just the Line:Column. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/BreakpointTreeElement.css: | |
| (.item.breakpoint .subtitle.formatted-location): | |
| Italics if the subtitle is displaying a formatted location. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement): | |
| (WebInspector.BreakpointTreeElement.prototype._updateTitles): | |
| For SourceMap resources, show the formatted / original location. | |
| Always have the real original location in the tooltip. | |
| (WebInspector.BreakpointTreeElement.prototype._breakpointLocationDidChange): | |
| Update the titles if any location changes (the original file may | |
| have been formatted, and we'd want to update for that). | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.get subtitleElement): | |
| Be sure to create the title element the subtitle gets appended to. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalOrFormattedSourceCodeLocation): | |
| This essentially means, show location in the editor. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.formattedLocationString): | |
| Helper for getting the display string for the formatted location. | |
| 2013-04-01 Joseph Pecoraro <pecoraro@apple.com> | |
| Avoid some asserts that can happen when reformatting files with breakpoints. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointLocation): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.updateStyles): | |
| (WebInspector.TextEditor.prototype._removeBreakpointFromLineAndColumn): | |
| 2013-03-29 Timothy Hatcher <timothy@apple.com> | |
| Add CSS as a known source type. | |
| <rdar://problem/13498380> ASSERTION: IssueMessage.js:64: Unknown issue source: css | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/IssueMessage.js: | |
| (WebInspector.IssueMessage): | |
| 2013-03-29 Timothy Hatcher <timothy@apple.com> | |
| Don't try to toggle visibility if a toggle is already pending. | |
| <rdar://problem/13401011> New Shortcut to hide/show elements while | |
| inspecting breaks if you leave the key pressed. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._hideElement.toggleProperties): | |
| (WebInspector.DOMTreeOutline.prototype._hideElement): | |
| 2013-03-29 Joseph Pecoraro <pecoraro@apple.com> | |
| Avoid a SourceMapResource Folder chain of single level folders. | |
| On of my test cases, <http://dev.fontdragr.com>, a resource with | |
| a source map has all its source map resources in a "src" folder. | |
| This creates a poor experience in the resources sidebar. When | |
| expanding the resource, there is just a "src" folder. In those | |
| cases, and in general if there is one long chain of folders, | |
| don't even use folders. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate.folderHasOnlyResourceChildren): | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate): | |
| (WebInspector.SourceCodeTreeElement.prototype.createFoldersAsNeededForSubpath): | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13310717> Source Maps: should display folder hierarchy in the sidebar | |
| Resolve "./" and "../" in URL paths in parseURL. Leave the path | |
| unadjusted if we get to a point we don't know how to handle, e.g. | |
| too many "../" components. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype.createFoldersAsNeededForSubpath): | |
| * UserInterface/Utilities.js: | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13310717> Source Maps: should display folder hierarchy in the sidebar | |
| Often SourceMap's include sources in a hierarchy. We should create | |
| a folder structure for that hierarchy in the resources sidebar. When | |
| the SourceMap is part of a Frame, we don't do this, we still just | |
| sort SourceMapResources into their associated type folder. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.compareFolderAndResourceTreeElements): | |
| Added a generic sort function that can take both Folder and Resource | |
| tree elements. It sorts folders first, by name, then resources by their | |
| normal sort order (type and name). | |
| * UserInterface/SourceMap.js: | |
| (WebInspector.SourceMap.prototype.get sourceMappingURLBasePath): | |
| When the source map resolves its sources it builds an absolute URL | |
| using the partial URL (map.sourceRoot + map.source[i]) and base URL | |
| of the provided sourceMappingURL. We can use this "base path" to | |
| get only the individual source's relative subpath later on. | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype.get sourceMapRelativeSubpath): | |
| Get the subpath relative to the SourceMap's url. This allows us | |
| to get the path components and build a directory tree. | |
| * UserInterface/SourceCodeTreeElement.js: | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate): | |
| (WebInspector.SourceCodeTreeElement.prototype.createFoldersAsNeededForSubpath): | |
| (WebInspector.SourceCodeTreeElement.prototype.descendantResourceTreeElementTypeDidChange): | |
| Given a subpath, create folders as needed and insert the actual | |
| SourceMapResourceTreeElement inside the deepest folder. Cache | |
| folders along the way so we don't re-create folders, and so that | |
| we can look them up again later if needed. | |
| 2013-03-28 Timothy Hatcher <timothy@apple.com> | |
| Combine and minify CodeMirror scripts and styles in Production builds. | |
| <rdar://problem/13446918> | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/combine-resources.pl: | |
| * Scripts/copy-user-interface-resources.sh: | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| Unreviewed. Missing semicolon causing warning when stripping asserts. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.updateBreakpointLineAndColumn): | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13412969> Reveal line centered hits a code mirror exception unless put in setTimeout | |
| CodeMirror issue has been fixed. Remove the "delay" form paths that | |
| would have hit the exception before. They no longer do. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.revealAndHighlightLine): | |
| (WebInspector.TextEditor.prototype.revealLine): | |
| (WebInspector.TextEditor.prototype._revealPendingLineIfPossible): | |
| (WebInspector.TextEditor.prototype._scrollIntoViewCentered): | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13412969> Reveal line centered hits a code mirror exception unless put in setTimeout | |
| <rdar://problem/13512430> Idle Inspector recalculates styles a few times a second because of CodeMirror | |
| Update CodeMirror to trunk to get a few recent fixes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| * UserInterface/External/CodeMirror/sass.js: | |
| 2013-03-28 Joseph Pecoraro <pecoraro@apple.com> | |
| Add a small script to update CodeMirror resources. | |
| Reviewed by Cody Krieger. | |
| * Scripts/update-codemirror-resources.rb: Added. | |
| 2013-03-28 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-03-28 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13505485> REGRESSION: Can't copy links from the console via the context menu | |
| Let the default context menu show if the user targeted an | |
| <a> element that is not a console message URL. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): | |
| 2013-03-28 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13526203> Recording profiles in the Instruments sidebar should show a spinner | |
| Remove the "Recording" prefix for profiles that are recording and | |
| instead use an indeterminate spinner to indicate the profile is | |
| recording. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Remove unused string "Recording JavaScript Profile %s\u2026". | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingEnded): | |
| Remove the indeterminate spinner from the tree element representing | |
| the profile that finished recording. | |
| (WebInspector.InstrumentSidebarPanel.prototype._titleForProfile): | |
| For profiles that are presently recording, simulate the pending | |
| addition of the tree element by adding 1 to the generated number. | |
| This ensures that the generated title matches the one that will | |
| appear as this method is called again upon recording completion. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileWasAdded): | |
| Add an indeterminate spinner to the tree element representing | |
| the newly-added profile. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.startProfilingCSSSelectors): | |
| (WebInspector.ProfileManager.prototype.stopProfilingCSSSelectors): | |
| (WebInspector.ProfileManager.prototype.profileWasStartedFromConsole): | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): | |
| Use the final title directly since we're now using an indeterminate | |
| spinner to indicate a profile is recording. | |
| 2013-03-28 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13525984> Profile name in navigation bar breadcrumbs doesn't update when recording completes | |
| Propagate an event when a GeneralTreeElement's "mainTitle" | |
| property changes such that the NavigationBar may eventually | |
| pick it up and update itself. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.set mainTitle): | |
| Dispatch the new MainTitleDidChange event. | |
| * UserInterface/GeneralTreeElementPathComponent.js: | |
| (WebInspector.GeneralTreeElementPathComponent): | |
| Register a listener for the MainTitleDidChange event on the | |
| provided GeneralTreeElement. | |
| (WebInspector.GeneralTreeElementPathComponent.prototype._mainTitleDidChange): | |
| Update the "displayName" property to match the GeneralTreeElement's | |
| updated "mainTitle" property. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline): | |
| (TreeElement): | |
| Make both TreeOutline and TreeElement subclasses of | |
| WebInspector.Object such that they may dispatch events. | |
| 2013-03-28 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13105775> Handle currently recording profiles in a more graceful manner | |
| We now present a nice-looking "RecordingÉ" message when a recording | |
| profile is selected in the instruments sidebar. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| New "RecordingÉ" string used to present when we're recording a profile | |
| of an unknown type (future-proofing). | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): | |
| (WebInspector.CSSSelectorProfileView.prototype.recordingTitle): | |
| (WebInspector.CSSSelectorProfileView.prototype.displayProfile): | |
| Implement the new ProfileView protocol to display the profile | |
| data only when it's available. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): | |
| (WebInspector.JavaScriptProfileView.prototype.recordingTitle): | |
| (WebInspector.JavaScriptProfileView.prototype.displayProfile.profileCallback): | |
| (WebInspector.JavaScriptProfileView.prototype.displayProfile): | |
| Implement the new ProfileView protocol to display the profile | |
| data only when it's available. | |
| * UserInterface/Main.html: | |
| Add the new ProfileView.css file. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.stopProfilingCSSSelectors): | |
| Ensure we set the "recording" property last as it would fire the | |
| new WebInspector.ProfileObject.Event.FinshedRecording event before | |
| the profile data has been set on the object. | |
| * UserInterface/ProfileObject.js: | |
| (WebInspector.ProfileObject.prototype.set recording): | |
| Dispatch a new WebInspector.ProfileObject.Event.FinshedRecording | |
| event when the profile has finished recording. | |
| * UserInterface/ProfileView.css: Added. | |
| (.recording-profile-view): | |
| (.recording-profile-view > .indeterminate-progress-spinner): | |
| (.recording-profile-view > span): | |
| New CSS support for the new recording message in ProfileView, | |
| using CSS flexbox to vertically and horizontally center the | |
| indeterminate spinner and text. | |
| * UserInterface/ProfileView.js: | |
| (WebInspector.ProfileView): | |
| In case the profile for this ProfileView is still recording, | |
| register for the WebInspector.ProfileObject.Event.FinshedRecording | |
| event to be notified of when the profile is done recording | |
| and show a "RecordingÉ" message until then. | |
| (WebInspector.ProfileView.prototype.displayProfile): | |
| New method called when the profile has finished recording and | |
| we've removed the "RecordingÉ" message from display. Meant to | |
| be implemented by subclasses. | |
| (WebInspector.ProfileView.prototype.recordingTitle): | |
| New method called when populating the "RecordingÉ" message allowing | |
| subclasses to return a clearer message. | |
| (WebInspector.ProfileView.prototype._profileFinishedRecording): | |
| Event handler for the WebInspector.ProfileObject.Event.FinshedRecording | |
| event which removes the "RecordingÉ" message and calls | |
| displayProfile(). | |
| (WebInspector.ProfileView.prototype._showRecordingMessage): | |
| Display the "RecordingÉ" message. | |
| (WebInspector.ProfileView.prototype._hideRecordingMessage): | |
| Removes the "RecordingÉ" message, if any. | |
| 2013-03-28 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13483963> copying text from the web inspector includes [LOG] when you paste | |
| Don't add [Log] prefix for log-level messages. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): | |
| 2013-03-26 Timothy Hatcher <timothy@apple.com> | |
| Support for dock-to-right in the Web Inspector. | |
| rdar://problem/10368152 | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.setDockSide): | |
| * UserInterface/Main.css: | |
| (body.docked.bottom): | |
| (body.docked.right): | |
| (#docked-resizer): | |
| (body.docked #docked-resizer): | |
| (body.docked.bottom #docked-resizer): | |
| (body.docked.right #docked-resizer): | |
| (body.docked.bottom #toolbar): | |
| (body.docked.bottom #toolbar .item:not(.flexible-space)): | |
| (body.docked.right #navigation-sidebar.collapsed > .resizer): | |
| * UserInterface/Main.js: | |
| (WebInspector.loaded): | |
| (WebInspector.contentLoaded): | |
| (WebInspector.updateDockedState): | |
| (WebInspector._toolbarDisplayModeDidChange): | |
| (WebInspector._toolbarSizeModeDidChange): | |
| (WebInspector._toolbarMouseDown): | |
| (WebInspector._dockedResizerMouseDown.dockedResizerDrag): | |
| (WebInspector._dockedResizerMouseDown): | |
| 2013-03-27 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13105774> Recording a profile with the inspector UI should automatically select the new profile upon completion | |
| Automatically select profiles that completed as a result of the user | |
| pressing the record button in the instruments sidebar panel. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingEnded): | |
| Check the "fromConsole" property on the ProfilingEnded event to | |
| see whether this profile should be automatically selected. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): | |
| Also indicate whether the ProfilingEnded event is created as a | |
| result of a profile finishing recording as a result of calling | |
| one of the console APIs. | |
| 2013-03-27 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13190009> Profile recorded prior to the current page load may show empty content view | |
| We now create the content view for a profile that finished recording instantly | |
| rather than delay it until selection. This ensures that all recorded profiles | |
| are available across page loads, until we navigate away. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): | |
| Fix an oversight from the previous commit where we wouldn't distinguish | |
| calls to console.profile() and console.profileEnd() made as a result | |
| of starting a profile from the UI or starting a profile by actually | |
| calling these methods. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingEnded): | |
| Force the creation of the content view for the provided profile so that | |
| the profile is immediately retrieved from the backend and available | |
| across page loads. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.stopProfilingCSSSelectors): | |
| (WebInspector.ProfileManager.prototype.addJavaScriptProfile): | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): | |
| Pass the currently recording profile as data to the ProfilingEnded | |
| event dispatched. | |
| 2013-03-27 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-03-27 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13515381> Profiles started from console API don't appear until done | |
| We now intercept console.profile() and console.profileEnd() messages | |
| appearing through the ConsoleObserver so that we can simulate | |
| setRecordingJavaScriptProfile protocol events in the ConsoleManager. | |
| This allows us to deal with console profiles in a more unified manner. | |
| The recording button, however, does not go red when a profile is | |
| recording from the console. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Changed string for "Recording JavaScript ProfileÉ" to allow for | |
| a profile title as well, since it might be known form the | |
| console.profile() call that initiated it. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): | |
| Check for console.profile() and console.profileEnd() calls and | |
| inform the ProfileManager that a profile started or ended from | |
| the console API. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.profileWasStartedFromConsole): | |
| Simulate a setRecordingJavaScriptProfile protocol event and set up | |
| the profile's title if provided. | |
| (WebInspector.ProfileManager.prototype.profileWasEndedFromConsole): | |
| Simulate a setRecordingJavaScriptProfile protocol event. | |
| (WebInspector.ProfileManager.prototype.addJavaScriptProfile): | |
| Remove custom logic to deal with the belated creation of a | |
| JavaScriptProfileObject for a profile that would have been started | |
| from the console API since we now get the notification via the simulated | |
| setRecordingJavaScriptProfile protocol event. | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): | |
| Only dispatch the ProfilingStarted event if the profile was initiated | |
| from the user interface. | |
| 2013-03-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Check-in some documentation files on the RWI protocols. | |
| Better these be checked in then floating on my machine. | |
| Rubber-stamped by Timothy Hatcher. | |
| * Documentation/RWI-Messages.graffle: Added. | |
| * Documentation/RWI-Messages.pdf: Added. | |
| 2013-03-26 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13096650> Debugger popover does not appear sometimes (or is too slow to appear) | |
| We now dismiss the debugger popover when the hovered token (or the | |
| popover for it) is no longer hovered for a whole second. Additionally, | |
| if there is marked text, we immediately show a popover for a newly | |
| hovered token instead of waiting 500ms so that's easier to go from | |
| token to token to get their information. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover.prototype.get element): | |
| Newly public property, used to check in hoveredElementCanReleaseHoveredToken() in | |
| the SourceCodeTextEditor whether the newly hovered element is contained within | |
| a popover. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.hoveredElementCanReleaseHoveredToken): | |
| Check whether the newly hovered element is contained within the presented | |
| popover or whether text in the popover is selected. | |
| (WebInspector.SourceCodeTextEditor.prototype.hoveredTokenWasReleased): | |
| Dismiss the popover since the user has moused out of the hovered token long | |
| enough that it shouldn't be considered hovered anymore. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.stopTrackingTokenHovering): | |
| Remove the window-wide mousemove event listener. | |
| (WebInspector.TextEditor.prototype.handleEvent): | |
| Route mousemove events to the _mouseMovedWithMarkedText() method | |
| if it's the window-wide mousemove event listener. | |
| (WebInspector.TextEditor.prototype.highlightHoveredExpression): | |
| Start tracking mousemove events at the window level so that we can | |
| detect any element, even outside of the text editor, that might be | |
| hovered long enough to release the hovered token. | |
| (WebInspector.TextEditor.prototype.removeHighlightOnHoveredExpression): | |
| Remove the document-wide mousemove event listener and delete the | |
| _tokenHighlightMarkedText property so that we can use its absence | |
| to gather that there is no marked text when checking for a newly | |
| hovered token in _mouseMovedOverEditor(). | |
| (WebInspector.TextEditor.prototype.hoveredElementCanReleaseHoveredToken): | |
| Public method used to identify whether the hovered element qualifies | |
| to release the hovered token. The default implementation simply checks | |
| that the hovered element is the marked text for the hovered token. | |
| (WebInspector.TextEditor.prototype.hoveredTokenWasReleased): | |
| Public method meant to be subclassed, called when we've identified that | |
| the hovered token has been moused out of for more than a second. | |
| (WebInspector.TextEditor.prototype._mouseMovedOverEditor): | |
| Immediately check the newly hovered token if there already is | |
| hovered token, allowing for a quick inspection of hovered tokens. | |
| (WebInspector.TextEditor.prototype._mouseMovedWithMarkedText): | |
| Check the hovered element qualifies to release the hover token, and if it so, | |
| start a one-second timer to release it. | |
| (WebInspector.TextEditor.prototype._checkHoveredToken): | |
| Stop the timer started in _mouseMovedWithMarkedText() to check whether | |
| the currently hovered element could qualify to release the hovered token. | |
| (WebInspector.TextEditor.prototype._markedTextIsNoLongerHovered): | |
| Method called when the timer started in _mouseMovedWithMarkedText() to | |
| check whether the currently hovered element could qualify to relase the | |
| hovered token has fired. | |
| 2013-03-26 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13505817> Debugger popovers don't appear for undefined values | |
| Handle the RemoteObject type "undefined" and also implement better | |
| handling of null Object values as well. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered.populate): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNull): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForUndefined): | |
| 2013-03-26 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| Reviewed by Conrad Shultz. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-03-26 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13439854> REGRESSION: Copying array or object output does not contain values | |
| We now simply use the _formattedMessage DOM node if available and | |
| if the message isn't a stack trace. Then, we insert the URL line, | |
| with repeat count if set, after the first line. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): | |
| 2013-03-26 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13345023> Logging an Array after it has been sorted results in its undefined elements not being shown | |
| Merging code from OpenSource to match the handling of arrays in the Console. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray): | |
| (WebInspector.ConsoleMessageImpl.prototype.appendUndefined): | |
| (WebInspector.ConsoleMessageImpl.prototype._printArray): | |
| * UserInterface/RemoteObject.js: | |
| (WebInspector.RemoteObject.prototype.release): | |
| (WebInspector.RemoteObject.prototype.arrayLength): | |
| 2013-03-25 Timothy Hatcher <timothy@apple.com> | |
| Don't include the main frame document as a separate resource in the sidebar. | |
| <rdar://problem/13484805> REGRESSION: Main frame is included twice in the Resources sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): | |
| Skip resources with type "Document" and with the same url as the frame. | |
| 2013-03-25 Timothy Hatcher <timothy@apple.com> | |
| Fix large image scaling after the switch to the new flex model | |
| <rdar://problem/13493712> REGRESSION: Very poor image squishing when content | |
| window is narrow / image is large (113222) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageResourceContentView.css: | |
| (.content-view.resource.image): | |
| (.content-view.resource.image img): | |
| Use min-width: 0 so the image can shrink. | |
| 2013-03-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Turn on support for breakpoints in pretty printed resources and SourceMaps | |
| We are now getting expected column information from the backend and | |
| hitting breakpoints on columns as expected. This was the last change | |
| needed to consider the following tasks complete: | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): | |
| 2013-03-24 Joseph Pecoraro <pecoraro@apple.com> | |
| Workaround while still investigating <rdar://problem/13412969>. | |
| Jump to line centered can still throw an exception when revealing a | |
| when the content first loads (reveal pending line). So delay in | |
| just that case. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.revealAndHighlightLine): | |
| (WebInspector.TextEditor.prototype.revealLine): | |
| (WebInspector.TextEditor.prototype._revealPendingLineIfPossible): | |
| 2013-03-25 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13495086> Commands and their result should not be subject to search filtering | |
| No longer filter out commands and their results based on search terms. | |
| We also change the CSS class name we use to hide messages that may be | |
| filtered out due to the search terms to be exclusive rather than | |
| inclusive. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.css: | |
| (.search-in-progress .console-item.filtered-out-by-search): | |
| (.search-in-progress .console-item:not(.filtered-out-by-search) .highlighted): | |
| (.search-in-progress .console-item:not(.filtered-out-by-search) .highlighted.selected): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._isMessageVisible): | |
| (WebInspector.LogContentView.prototype._visibleMessages): | |
| (WebInspector.LogContentView.prototype._performSearch): | |
| 2013-03-25 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13494748> Expandable console items should only select when clicking outside of the expandable part | |
| We no longer select messages if the hit area is part of an expandable element. | |
| This makes it easier to expand nodes and JS objects without first having to | |
| select the console message. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| (WebInspector.LogContentView.prototype._targetInMessageCanBeSelected): | |
| 2013-03-25 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13495023> JS objects logged to console can't be expanded using keyboard | |
| We now also handle expansion of JS objects logged to the console. To support this, | |
| we add a new VisibleContentDidChange event to WebInspector.Section such that we can | |
| when the visible content of a given WebInspector.ObjectPropertiesSection is updated, | |
| since there is no onexpand() method available as is the case with TreeOutline. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._leftArrowWasPressed): | |
| (WebInspector.LogContentView.prototype._rightArrowWasPressed.else.bind): | |
| (WebInspector.LogContentView.prototype._rightArrowWasPressed): | |
| (WebInspector.LogContentView.prototype._propertiesSectionDidUpdateContent): | |
| * UserInterface/ObjectPropertiesSection.js: | |
| (WebInspector.ObjectPropertiesSection.prototype.updateProperties): | |
| * UserInterface/Section.js: | |
| (WebInspector.Section): | |
| (WebInspector.Section.prototype.expand): | |
| 2013-03-25 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13416461> Message repeat count causes bad layout in the Console | |
| We now always display the warning or error icon as well as the repeat count | |
| for the message, and we copy the repeat count to the clipboard as well. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.updateRepeatCount): | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): | |
| * UserInterface/LogContentView.css: | |
| (.console-message .bubble): | |
| 2013-03-25 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13493775> Console log should scroll to reveal messages for highlighted search match | |
| Make sure we scroll to reveal messages upon highlighting a match. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._highlightSearchMatchAtIndex): | |
| 2013-03-24 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13418317> REGRESSION: DOM Tree "Edit as HTML" is not inserting newlines with return | |
| Give multiline WebInspector.startEditing edit boxes have better white-space behavior. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Editing.css: | |
| (.editing.multiline): | |
| * UserInterface/EditingSupport.js: | |
| 2013-03-24 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13491916> Searching forward or back in find banner should reveal in center | |
| Reviewed by Dean Jackson. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._revealSearchResult): | |
| (WebInspector.TextEditor.prototype._isPositionVisible): | |
| (WebInspector.TextEditor.prototype._scrollIntoViewCentered): | |
| When revealing a search result, reveal the line centered in | |
| the editor if needed. Don't do the setTimeout, the lines in | |
| the editor did not change so we shouldn't need to worry about | |
| the CodeMirror exception. | |
| (WebInspector.TextEditor.prototype.revealAndHighlightLine): | |
| Share the isPositionVisible code. | |
| (WebInspector.TextEditor.prototype._prettyPrint): | |
| This is the only case where I know we need the setTimeout delay | |
| to workaround a CodeMirror exception when autoformatting. | |
| 2013-03-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13491257> CSS pretty printing no longer works | |
| For CSS there is now a "css-base" mode with a "text/css" variant, | |
| and a "text/x-scss" variant. There is a convenience mode "css" | |
| which explicitly gets the "text/css" variant of the "css-base" mode. | |
| The pretty printer should extend "css-base". Whether the content | |
| is "text/css" or "text/x-scss" the mode outputting the tokens will | |
| be "css-base", and that mode needs to have the pretty printer | |
| extensions. | |
| Extend the "css-base" mode, instead of the overly specific text/css | |
| css mode to have extendedToken and alternate name "css". So, as | |
| "css-base" creates tokens for either "text/css" or "text/x-scss", | |
| it will adds our "m-css" style classes and get our styles. | |
| We still define the "css-rule" mode to be an alias of the text/css | |
| specific mode. To workaround a limitation of CodeMirror, we don't | |
| re-extend any properties that have already been extended (token, | |
| alternate name) and only extend new properties. We get the earlier | |
| extensions because internally when creating a "css-rule" mode, | |
| CodeMirror get the text/css variant of "css-base" with "css-base" | |
| extensions and then applies our extensions on top of that. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.hasFormatter): | |
| * UserInterface/CodeMirrorAdditions.js: | |
| 2013-03-23 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13490780> Find banner status does not update after switching between source files | |
| When switching content views, reset the find banner and perform a | |
| search with the find banner's query in the new content view so that | |
| keyboard shortcuts will work in the new content view even though | |
| the find banner is hidden. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.ContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| Properties used by ContentBrowser to update the find banner when | |
| switching to the ContentView. Allow a search to be performed on | |
| a ContentView without automatically jumping to the first result. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype._findBannerDidShow): | |
| (WebInspector.ContentBrowser.prototype._findBannerDidHide): | |
| Allow or disallow jumping to the first search result based on banner visibility. | |
| Keyboard shortcuts will still work. | |
| (WebInspector.ContentBrowser.prototype._updateFindBanner): | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): | |
| When the content view changes, update the banner. Search the new | |
| content view so that keyboard shortcuts work. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner.prototype.show): | |
| (WebInspector.FindBanner.prototype.hide): | |
| Emit events for when the banner shows or hides. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.ClusterContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.DOMTreeContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| (WebInspector.DOMTreeContentView.prototype.performSearch.searchResultsReady): | |
| (WebInspector.DOMTreeContentView.prototype.performSearch): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.ScriptContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.set automaticallyRevealFirstSearchResult): | |
| (WebInspector.TextEditor.prototype.addSearchResults.markRanges): | |
| (WebInspector.TextEditor.prototype.addSearchResults): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get hasPerformedSearch): | |
| (WebInspector.TextResourceContentView.prototype.set automaticallyRevealFirstSearchResult): | |
| Implement the new ContentView properties. Respect the | |
| automaticallyRevealFirstSearchResult property by not jumping to the | |
| first result unless we are allowed too. | |
| 2013-03-23 Joseph Pecoraro <pecoraro@apple.com> | |
| Fix a typo causing warnings in the inspector. | |
| Unreviewed. | |
| * UserInterface/Main.html: | |
| 2013-03-23 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11682467> Should be able to do a Find in a Log | |
| Add a search / filter bar to the navigation bar of the console log. | |
| The search bar can be given focus by hitting Cmd+F, and it can provide | |
| focus back to the console prompt by hitting Esc. or Enter (which also | |
| highlights the first matching search result). The Cmd+G and Cmd+Shift+G | |
| keyboard shortcuts also work as expected. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype._promptKeyDown): | |
| Add support for the new Cmd+F, Cmd+G and Cmd+Shift+G keyboard shortcuts. | |
| * UserInterface/LogContentView.css: | |
| (.log-search-bar > input): | |
| (.search-in-progress .console-item): | |
| (.search-in-progress .console-item.matches-search:not(.filtered-out)): | |
| (.search-in-progress .console-item.matches-search .highlighted): | |
| (.search-in-progress .console-item.matches-search .highlighted.selected): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| Create the SearchBar. | |
| (WebInspector.LogContentView.prototype.get navigationItems): | |
| Add the SearchBar to the navigation bar. | |
| (WebInspector.LogContentView.prototype.get searchInProgress): | |
| Inidicates whether a search is in progress (ie. search term | |
| isn't the empty string). | |
| (WebInspector.LogContentView.prototype.focusSearchBar): | |
| New API to bring focus to the SearchBar's input field. | |
| (WebInspector.LogContentView.prototype.highlightPreviousSearchMatch): | |
| New API to highlight the previous search match. | |
| (WebInspector.LogContentView.prototype.highlightNextSearchMatch): | |
| New API to highlight the next search match. | |
| (WebInspector.LogContentView.prototype.searchBarWantsToLoseFocus): | |
| SearchBar delegate method we use to move focus back to the prompt | |
| as the user hit the Esc. key while the search bar has focus. | |
| (WebInspector.LogContentView.prototype.searchBarDidActivate): | |
| SearchBar delegate method we use to move focus back to the prompt | |
| as the user hit the Enter key while the search bar has focus. We | |
| also select the first search match to make it stand out. | |
| (WebInspector.LogContentView.prototype._updateMessagesSelection): | |
| Refactoring: _allVisibleMessages() is now _visibleMessages(). | |
| (WebInspector.LogContentView.prototype._isMessageVisible): | |
| Take into account whether the message matches the search terms | |
| so that it's filtered otherwise. | |
| (WebInspector.LogContentView.prototype._selectAllMessages): | |
| Refactoring: _allVisibleMessages() is now _visibleMessages(). | |
| (WebInspector.LogContentView.prototype._unfilteredMessages): | |
| New method to provide the list of messsages that match the | |
| filters provided via the scope bar. | |
| (WebInspector.LogContentView.prototype._visibleMessages): | |
| Refactoring: _allVisibleMessages() is now _visibleMessages(). | |
| Also take into account additional filtering via the search bar. | |
| (WebInspector.LogContentView.prototype._filterMessages): | |
| Perform a search after the filters have changed to ensure we | |
| are showing the correct set of messages. | |
| (WebInspector.LogContentView.prototype._keyDown): | |
| Add support for the new Cmd+F, Cmd+G and Cmd+Shift+G keyboard shortcuts. | |
| (WebInspector.LogContentView.prototype._commandFWasPressed): | |
| Focus the search bar upon hitting Cmd+F. | |
| (WebInspector.LogContentView.prototype._commandGWasPressed): | |
| Highlight the next search match upon hitting Cmd+G. | |
| (WebInspector.LogContentView.prototype._commandShiftGWasPressed): | |
| Highlight the next search match upon hitting Cmd+Shift+G. | |
| (WebInspector.LogContentView.prototype._upArrowWasPressed): | |
| (WebInspector.LogContentView.prototype._downArrowWasPressed): | |
| (WebInspector.LogContentView.prototype._previousMessage): | |
| (WebInspector.LogContentView.prototype._nextMessage): | |
| (WebInspector.LogContentView.prototype._clearFocusableChildren): | |
| Refactoring: _allVisibleMessages() is now _visibleMessages(). | |
| (WebInspector.LogContentView.prototype._searchTextDidChange): | |
| Run the search as the terms in the search bar changed. | |
| (WebInspector.LogContentView.prototype._performSearch): | |
| (WebInspector.LogContentView.prototype._highlightRanges): | |
| Perform a search based on the text in the search bar and apply | |
| a "matches-search" CSS class to all text ranges matching the | |
| search terms. This is actually performed by method merged from | |
| the OpenSource Web Inspector code. | |
| (WebInspector.LogContentView.prototype._rangesOverlap): | |
| Checks whether two text ranges overlap at all. We use this to identify | |
| if the previously selected search term is still present in the new | |
| set of matching search ranges. | |
| (WebInspector.LogContentView.prototype._highlightSearchMatchAtIndex): | |
| Highlights a given term in the array of highlighted elements created in | |
| _performSearch(). | |
| * UserInterface/Main.html: | |
| Include the new SearchBar files. | |
| * UserInterface/Main.js: | |
| (WebInspector.highlightRangesWithStyleClass): | |
| (WebInspector.revertDomChanges): | |
| Methods merged as-is from OpenSource. | |
| * UserInterface/SearchBar.css: Added. | |
| (.search-bar > input): | |
| * UserInterface/SearchBar.js: Added. | |
| (WebInspector.SearchBar): | |
| (WebInspector.SearchBar.prototype.get text): | |
| (WebInspector.SearchBar.prototype.set text): | |
| (WebInspector.SearchBar.prototype.focus): | |
| (WebInspector.SearchBar.prototype._handleSearchEvent): | |
| (WebInspector.SearchBar.prototype._handleKeydownEvent): | |
| New NavigationItem subclass to provide a SearchBar within a NavigationBar. | |
| 2013-03-22 Timothy Hatcher <timothy@apple.com> | |
| Make the New Rule button 10px taller for a bigger hit target. | |
| <rdar://problem/13470200> I expect the clickable area for "+ New Rule" to be bigger. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/RulesStyleDetailsPanel.css: | |
| (.sidebar > .panel.details.css-style .rules .new-rule): | |
| 2013-03-22 Timothy Hatcher <timothy@apple.com> | |
| Show the compression status and the compression amount in the Resource details sidebar. | |
| <rdar://problem/13201070> Show gzip status of resources more prominently | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get encodedSize): Added. | |
| (WebInspector.Resource.prototype.get transferSize): Use encodedSize. | |
| (WebInspector.Resource.prototype.get compressed): Added. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Added compression group. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): Call _refreshCompressed. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshCompressed): Added. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshDecodedSize): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshTransferSize): | |
| Call _refreshCompressed and update encoded size row. | |
| 2013-03-21 Timothy Hatcher <timothy@apple.com> | |
| Add a placeholder for empty style rules in the Style details sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-placeholder): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): | |
| Set the placeholder option based on the readOnly state. | |
| 2013-03-21 Timothy Hatcher <timothy@apple.com> | |
| Enable auto closing brackets and quotes along with matching bracket highlighting. | |
| Also share common CodeMirror styles in CodeMirrorOverrides.css. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror): | |
| (.css-style-text-editor > .CodeMirror-scroll): | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| * UserInterface/CodeMirrorOverrides.css: Added. | |
| (.CodeMirror *): | |
| (.CodeMirror .CodeMirror-lines): | |
| (.CodeMirror pre): | |
| (.CodeMirror .CodeMirror-selected): | |
| (.CodeMirror.CodeMirror-focused .CodeMirror-selected): | |
| (.CodeMirror .CodeMirror-cursor): | |
| (.CodeMirror .CodeMirror-lines .CodeMirror-matchingbracket): | |
| (.CodeMirror .CodeMirror-lines .CodeMirror-nonmatchingbracket): | |
| (.CodeMirror .CodeMirror-gutters): | |
| (.CodeMirror .CodeMirror-linenumber): | |
| * UserInterface/Main.html: | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| 2013-03-21 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror to ToT (v3.11+) which includes a scroll performance file and other changes. | |
| Include the new placeholder and closebrackets add-ons so we can use them in our editors. | |
| Also includes more modes that could be encountered on the web that we should syntax highlight. | |
| I've included the SQL mode since I plan to switch the database prompt to use it soon. | |
| <rdar://problem/13470814> Scrolling in the Style > Rules sidebar is kind of sluggish | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/External/CodeMirror/clojure.js: Added. | |
| * UserInterface/External/CodeMirror/closebrackets.js: Added. | |
| * UserInterface/External/CodeMirror/codemirror.css: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.js: Updated. | |
| * UserInterface/External/CodeMirror/coffeescript.js: Added. | |
| * UserInterface/External/CodeMirror/css.js: Updated. | |
| * UserInterface/External/CodeMirror/less.js: Added. | |
| * UserInterface/External/CodeMirror/livescript.js: Added. | |
| * UserInterface/External/CodeMirror/placeholder.js: Added. | |
| * UserInterface/External/CodeMirror/sass.js: Added. | |
| * UserInterface/External/CodeMirror/searchcursor.js: Updated. | |
| * UserInterface/External/CodeMirror/sql.js: Added. | |
| * UserInterface/External/CodeMirror/xml.js: Updated. | |
| * UserInterface/Main.html: Include added files. | |
| 2013-03-21 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13439837> REGRESSION: Copying the output of console.log(1,2,3) only copies "[Log] 1" | |
| Use the _message property rather than _messageText to provide the base | |
| textual representation of a console message, as hinted by the _formatMessage | |
| method which says that _message "is used for inline message bubbles in | |
| SourceFrames, or other plain-text representations". | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): | |
| 2013-03-20 Timothy Hatcher <timothy@apple.com> | |
| Make the relaod button appear correctly when inspecting web archives. | |
| <rdar://problem/13455883> Extra misplaced folder in Inspector sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceTreeElement.css: | |
| (.item.resource > .status > .reload-button): | |
| (.item.resource.selected > .status > .reload-button): | |
| Use .resource instead of .resource-type-document. Since the button exists | |
| for web archives, and they get .resource-type-other. Fixing web archives | |
| to get a proper type is tracked by <rdar://problem/6420783>. | |
| 2013-03-20 Timothy Hatcher <timothy@apple.com> | |
| Correct some inconsistencies with opening the Inspector and what content views are opened. | |
| <rdar://problem/12947914> Opening web inspector with Show Page Resources can open inspector in inconsistent state | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showResources): | |
| (InspectorFrontendAPI.showMainResourceForFrame): | |
| Set ignoreLastContentCookie so the ResourceSidebarPanel has a chance to show the content view for the main frame | |
| once the main frame is known. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| Set collapsed after loading the pending frontend commands are dispatched so only the final selected sidebar panel | |
| gets shown and has a say in what content view gets shown. Also removed code that collapsed the details sidebar, | |
| now that sidebars are collapsed by default. | |
| (WebInspector.sidebarPanelForCurrentContentView): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): | |
| Only select the selected tree element again if the content view is from a different sidebar. This way showing the | |
| Resources sidebar when you have gone back and forth between other resource wont jump to some old selected resource. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): | |
| Allow onselect if we aren't showing a content view yet. That way the main frame is selected and shown in the content. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): | |
| (WebInspector.Sidebar.prototype.set width): | |
| Make collapsed by default. Only tell the sidebar panel about width changes if not collapsed. | |
| 2013-03-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13442600> Picking a frame in the console context selector menu should refocus the console input | |
| Detect when the hidden <select> in the HierarchicalPathComponent was | |
| interacted with, even if its value did not change, and trigger a | |
| "Clicked" event for those interested. The Console refocuses its prompt | |
| in these cases when the execution context selector is interacted with. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): | |
| (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseUp): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponent): | |
| (WebInspector.QuickConsole.prototype._removeExecutionContextPathComponentForFrame): | |
| (WebInspector.QuickConsole.prototype._pathComponentClicked): | |
| 2013-03-20 Timothy Hatcher <timothy@apple.com> | |
| Make editing CSS resources work correctly again. | |
| <rdar://problem/13457053> Safari Web Inspector: Editing .css files in main area is jumpy (112750) | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange.applyStyleSheetChanges.styleSheetFound): | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange.applyStyleSheetChanges): | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange): | |
| (WebInspector.CSSStyleManager.prototype._updateResourceContent.fetchedStyleSheetContent): | |
| We were relying on SourceCode.Event.ContentDidChange not firing if the content was equal. However, since we | |
| coalesce changes the content might be briefly out of sync and the event was firing. That would cause us to | |
| update TextEditor with a slightly older version of the content and mess up the user. | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Don't create a new console group on reload if the current one is empty. | |
| Also make sure to scroll the new group into view when it is create so it is visible and ready to show new messages. | |
| <rdar://problem/12951299> Web Inspector console shouldn't draw a line on refresh if nothing was printed | |
| <rdar://problem/13209212> Console doesn't scroll to the bottom when a reloaded page logs | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup.prototype.hasMessages): Added. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.startNewSession): | |
| Reuse the previous group if it does not have messages. Also scroll the new session into view so it is ready | |
| to show messages. | |
| * UserInterface/LogContentView.css: | |
| (.console-group.new-session .console-group-messages .console-item:first-child): Added. | |
| Don't show a border when it is in a new-session since there is already a dashed border. | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Don't show storage if we don't have a security origin (about:blank). | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager.prototype._securityOriginDidChange): | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Don't refresh the metrics display if the user is incrementing/decrementing via the arrow keys. | |
| When editing is committed or canceled we do a refresh to pick up any changes. | |
| <rdar://problem/13441338> REGRESSION: Safari Web Inspector: Using Up/Down to | |
| modify margins loses focus (112566) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._refresh): Return early if _ignoreNextRefresh. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._handleKeyDown): Set _ignoreNextRefresh. | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Make Local and Session storage work again. | |
| <rdar://problem/13266278> REGRESSION: Local and Session storage protocol | |
| changes break displaying these items | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMStorageObject.js: | |
| (WebInspector.DOMStorageObject.prototype.getEntries): | |
| Use DOMStorageAgent.getDOMStorageEntries or DOMStorageAgent.getDOMStorageItems. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.addDOMStorage): | |
| Revert earlier Curie compatibility support since it changed again! | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager): | |
| (WebInspector.StorageManager.prototype._securityOriginDidChange): Added. | |
| (WebInspector.StorageManager.prototype._domStorageForId): | |
| When a Frame's security origin changes, add local and session storage if they don't | |
| already exist for that security origin. | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Add securityOrigin to WebInspector.Frame. | |
| This will be needed to fix DOM Storage inspection. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): | |
| (WebInspector.Frame.prototype.initialize): | |
| (WebInspector.Frame.prototype.get securityOrigin): Added. | |
| Added securityOrigin parameters. Also fire the NameDidChange at the end of initialize | |
| so the Frame is in the final state instead of an intermediate state. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): | |
| (WebInspector.FrameResourceManager.prototype._createFrame): | |
| Pass along the securityOrigin so Frame can be created or initialized with it. | |
| Also pass along the frame name in places it was missing, now that we might need it. | |
| 2013-03-19 Timothy Hatcher <timothy@apple.com> | |
| Update InspectorBackendCommands to the latest. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype._getAgent): | |
| (InspectorBackendClass.prototype.registerCommand): | |
| (InspectorBackendClass.prototype.registerEnum): | |
| Added support for registerEnum, which is new. | |
| * UserInterface/InspectorBackendCommands.js: | |
| Updated to the latest from Open Source r146200. | |
| 2013-03-18 Timothy Hatcher <timothy@apple.com> | |
| Make console messages bottom align if the log hasn't scrolled yet. | |
| Also includes: | |
| * Restore clicking the empty space in the log to focus the prompt. | |
| * Make the prompt top border lighten when the log view is showing. | |
| <rdar://problem/13442215> Maybe improve console typing UI (112588) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup.prototype.addMessage): | |
| * UserInterface/LogContentView.css: | |
| (.console-messages): | |
| (.console-messages :first-child): | |
| Use flex layout and an auto top margin to push items to the bottom until scrolled. | |
| (.console-item): | |
| (.console-user-command .console-message): | |
| Move the border to the top since items are bottom aligned now. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| Focus the prompt if the click was in empty space. | |
| * UserInterface/Main.js: | |
| (WebInspector.showSplitConsole): | |
| (WebInspector.hideSplitConsole): | |
| (WebInspector.showFullHeightConsole): | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): | |
| Notify the QuickConsole via consoleLogVisibilityChanged when the log view shows | |
| or hides in the main content browser or split content browser. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console.showing-log): Added. Lighten the border color. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype.consoleLogVisibilityChanged): Added. | |
| Add or remove the showing-log style class. | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Tweak how the console view and split console work. | |
| Clicking the console button will always show the console full height. The console button | |
| is only blue when the console view is full height. Pressing escape always shows the split | |
| console. Add support for allowing the content view to decide if the split console can be | |
| shown. If it can't the full height console is shown instead. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get supportsSplitContentBrowser): | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get supportsSplitContentBrowser): | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype._showContentView): | |
| (WebInspector.ContentViewContainer.prototype._hideContentView): | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): | |
| (WebInspector.LogContentView.prototype._toggleSplit): | |
| * UserInterface/Main.js: | |
| (WebInspector.loaded): | |
| (WebInspector.contentLoaded): | |
| (WebInspector.isShowingSplitConsole): | |
| (WebInspector.currentViewSupportsSplitContentBrowser): | |
| (WebInspector.toggleSplitConsole): | |
| (WebInspector.showSplitConsole): | |
| (WebInspector.hideSplitConsole): | |
| (WebInspector.showFullHeightConsole): | |
| (WebInspector.isShowingConsoleView): | |
| (WebInspector.showConsoleView): | |
| (WebInspector.toggleConsoleView): | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._toggleOrFocus): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.get supportsSplitContentBrowser): | |
| 2013-03-18 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13443806> Safari Web Inspector: Point-to-inspect mode breaks when Node details sidebar open (112607) | |
| Fix typos that could cause exceptions. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Stop scaling the MoreColumns.pdf and LessColumns.pdf images. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid th.collapser > .collapser-button): | |
| * UserInterface/TimelinesContentView.js: | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Only call SidebarPanel's shown and hidden when the visibility actually changes. | |
| This was causing the Console view to not be remembered between sessions because the | |
| InstrumentsPanel was selecting a tree element in the shown function, even though | |
| the sidebar panel was not visible. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): | |
| (WebInspector.Sidebar.prototype.set collapsed): | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Speed up Web Inspector image generation some by using Uint32Array. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): | |
| (generateEmbossedImages._invertMaskImage): | |
| Use Uint32Array to process the pixels faster. Account for endianness (even though we don't | |
| really need to since we don't support Windows or PowerPC.) | |
| * UserInterface/Utilities.js: | |
| (Uint32Array.isLittleEndian): Added. | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Cache and restore generated images to speed up the load time for the Web Inspector. | |
| <rdar://problem/13436334> Web Inspector takes about 3s to activate | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages): | |
| Pass !this._imageCacheable to generateEmbossedImages. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): | |
| Don't set globalCompositeOperation to "clear" before using webkitPutImageDataHD. | |
| (generateColoredImagesForCSS): | |
| (generateColoredImagesForCSS.imageLoaded): Added. | |
| (generateColoredImagesForCSS.ensureImageIsLoaded): Added. | |
| (generateColoredImagesForCSS.restoreImages): Added. | |
| (generateColoredImagesForCSS.restoreImage): Added. | |
| (generateColoredImagesForCSS.devicePixelRatioChanged): Added. | |
| (generateColoredImagesForCSS.generateImagesIfNeeded): Renamed from generateImages. | |
| (generateColoredImagesForCSS.generateImagesIfNeeded.generateActiveImages): | |
| (generateColoredImagesForCSS.generateImage): | |
| Try to restore the images first. If needed, load the image and regenerate them. | |
| (_createImageLocalStorageKey): Added. | |
| (saveImageToLocalStorage): Added. | |
| (restoreImageFromLocalStorage): Added. | |
| (restoreImageFromLocalStorage.parseVersion): Added. | |
| Save and restore images via pixel arrays with localStorage. Abort the restore | |
| if versions mismatch or the array size isn't correct. | |
| (generateEmbossedImages): | |
| (generateEmbossedImages.imageLoaded): Added. | |
| (generateEmbossedImages.ensureImageIsLoaded): Added. | |
| (generateEmbossedImages.restoreImages): Added. | |
| (generateEmbossedImages.restoreImage): Added. | |
| (generateEmbossedImages.devicePixelRatioChanged): Added. | |
| (generateEmbossedImages.generateImagesIfNeeded): Added. | |
| (generateEmbossedImages.generateImagesIfNeeded.generateActiveImages): | |
| (generateEmbossedImages.generateImage): Renamed from _createEmbossedCanvasImage. | |
| Try to restore the images first. If needed, load the image and regenerate them. | |
| (generateEmbossedImages._invertMaskImage): | |
| (generateEmbossedImages._applyImageMask): | |
| Don't set globalCompositeOperation to "clear" before using webkitPutImageDataHD. | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| Mark the image as not cacheable. We need to swap images with the same identifiers. | |
| 2013-03-17 Timothy Hatcher <timothy@apple.com> | |
| Make generateColoredImagesForCSS require passing image width and height. | |
| This will be needed to cache and restore generated images for <rdar://problem/13436334>. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationSection.js: | |
| (WebInspector.CSSStyleDeclarationSection): | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._generateSortIndicatorImagesIfNeeded): | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded): | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded): | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImagesForCSS): | |
| * UserInterface/Main.js: | |
| (WebInspector._generateDisclosureTriangleImages): | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded): | |
| 2013-03-17 Joseph Pecoraro <pecoraro@apple.com> | |
| Simplify giving ExecutionContexts for Frames a name | |
| Reviewed by Dean Jackson. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.executionContextCreated): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponentFromFrame): | |
| Make both iOS 6 and trunk use the frame's main resource's display name. | |
| 2013-03-17 Joseph Pecoraro <pecoraro@apple.com> | |
| Clean-up Weight.svg a little more. | |
| Rubber-stamped by Timothy Hatcher. | |
| * UserInterface/Images/Weight.svg: | |
| Removed the path id, and extra processing instruction attribute. | |
| 2013-03-17 Joseph Pecoraro <pecoraro@apple.com> | |
| Add Execution Context / Frame selector to the QuickConsole | |
| <rdar://problem/10809363> PARITY (WebKit Web Inspector): UI for evaluating in different windows / frames from the console is missing | |
| Reviewed by Dean Jackson. | |
| * UserInterface/ExecutionContext.js: | |
| (WebInspector.ExecutionContext): | |
| Allow an execution context with the special undefined identifier. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.get sizesToFit): | |
| * UserInterface/QuickConsoleNavigationBar.js: | |
| (WebInspector.QuickConsoleNavigationBar.prototype.get sizesToFit): | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout): | |
| The QuickConsoleNavigationBar stretches. Respect that laying out a hierarchical path. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path-component > .selector-arrows): | |
| (.hierarchical-path-component.text-only): | |
| (.hierarchical-path-component.text-only > select): | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): | |
| * UserInterface/Images/UpDownArrows.svg: Added. | |
| Allow creating a text only HierarchicalPathComponent, and one that shows | |
| up/down popup selector arrows. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): | |
| (WebInspector.Frame.prototype.clearExecutionContexts): | |
| Send an event when clearing contexts. Provide a flag for when it happens | |
| while a frame is navigating, in which case we would expect a new execution | |
| context soon for the new page. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| Register for events necessary to fill a selector picker with frames. | |
| iOS 6 needs to provide frame ids, so listen for added / removed frames. | |
| Trunk and later use ExecutionContexts which Frames broadcast changes for. | |
| Executing in the main frame uses "undefined". | |
| (WebInspector.QuickConsole.prototype.get executionContextIdentifier): | |
| This is the selected identifier (contextId or frameId on iOS 6). If no | |
| selector is shown, this will still be the main frame execution context. | |
| (WebInspector.QuickConsole.prototype._executionContextPathComponentsToDisplay): | |
| (WebInspector.QuickConsole.prototype._rebuildExecutionContextPathComponents): | |
| Update the nav bar components. There is a single segment, with the selected component. | |
| (WebInspector.QuickConsole.prototype._framePageExecutionContextsCleared): | |
| (WebInspector.QuickConsole.prototype._framePageExecutionContextsChanged): | |
| Trunk, event handlers when frames get and clear execution contexts. When a frame | |
| navigates we have a little bit of logic to reselect that frame when its new | |
| execution context comes in. | |
| (WebInspector.QuickConsole.prototype._frameAdded): | |
| (WebInspector.QuickConsole.prototype._frameRemoved): | |
| (WebInspector.QuickConsole.prototype._frameMainResourceChanged): | |
| iOS 6 support. Track frame adds, removes, and resource changes to update the display. | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponent): | |
| (WebInspector.QuickConsole.prototype._createExecutionContextPathComponentFromFrame): | |
| Helpers for creating path components. Handles iOS 6 and trunk to get the right id. | |
| (WebInspector.QuickConsole.prototype._compareExecutionContextPathComponents): | |
| (WebInspector.QuickConsole.prototype._insertExecutionContextPathComponentForFrame): | |
| (WebInspector.QuickConsole.prototype._removeExecutionContextPathComponentForFrame): | |
| (WebInspector.QuickConsole.prototype._updateExecutionContextPathComponentForFrame): | |
| PathComponents are a linked list. We display them sorted. These are helpers for | |
| inserting, removing, and updating a path component in that list. | |
| (WebInspector.QuickConsole.prototype._pathComponentSelected): | |
| (WebInspector.QuickConsole.prototype._debuggerActiveCallFrameDidChange): | |
| Changes to the state of the inspector that may require the UI to update. | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt.prototype.evalInInspectedWindow): | |
| Evaluate in the context selected in the QuickConsole. | |
| 2013-03-17 Joseph Pecoraro <pecoraro@apple.com> | |
| Create an ExecutionContextList class. | |
| <rdar://problem/10809363> PARITY (WebKit Web Inspector): UI for evaluating in different windows / frames from the console is missing | |
| There may be many ExecutionContexts for a page, one for each isolated | |
| world in the frame. Store each context for a frame in an ExecutionContext | |
| and provide an accessor for the one that is the page context. | |
| This also converges on the name "pageExecutionContext" instead of | |
| "mainExecutionContext" for the special context of the page. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/Main.html: | |
| * UserInterface/ExecutionContextList.js: Added. | |
| (WebInspector.ExecutionContextList): | |
| (WebInspector.ExecutionContextList.prototype.get pageExecutionContext): | |
| (WebInspector.ExecutionContextList.prototype.get contexts): | |
| (WebInspector.ExecutionContextList.prototype.add): | |
| (WebInspector.ExecutionContextList.prototype.clear): | |
| ExecutionContextList holds a list of contexts and has a quick | |
| accessor for the page execution context. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): | |
| (WebInspector.Frame.prototype.get pageExecutionContext): | |
| (WebInspector.Frame.prototype.get executionContextList): | |
| (WebInspector.Frame.prototype.clearExecutionContexts): | |
| (WebInspector.Frame.prototype.addExecutionContext): | |
| Updated to use an ExecutionContextList. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree): | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode): | |
| (WebInspector.DOMTree.prototype._requestRootDOMNode): | |
| (WebInspector.DOMTree.prototype._framePageExecutionContextChanged): | |
| Updated from mainExecutionContext to pageExecutionContext. | |
| 2013-03-16 Timothy Hatcher <timothy@apple.com> | |
| Move the debugger controls from the quick console to the debugger sidebar. | |
| Also dynamically add and remove the call stack section so it isn't an eyesore | |
| when you are not paused. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/DebuggerSidebarPanel.css: Added. | |
| (.sidebar > .panel.debugger > .content): | |
| (.sidebar > .panel.debugger > .navigation-bar): | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerPauseResumeButtonClicked): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerStepOverButtonClicked): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerStepIntoButtonClicked): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerStepOutButtonClicked): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidPause): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerDidResume): | |
| (WebInspector.DebuggerSidebarPanel.prototype._debuggerCallFramesDidChange): | |
| (WebInspector.DebuggerSidebarPanel.prototype.deselectCallStackContentTreeElements): Added. | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/Main.html: | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype._toggleOrFocus): | |
| 2013-03-16 Timothy Hatcher <timothy@apple.com> | |
| Make the toolbar labels look better in window mode. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/Toolbar.css: | |
| (body:not(.docked) .toolbar .item.button > .label): Apply antialiased only to the labels | |
| so we don't affect text in the dashboard. Also add a stroke to make the text heavier. | |
| 2013-03-16 Timothy Hatcher <timothy@apple.com> | |
| Make toolbar items layout and collapse better at narrow window sizes. | |
| <rdar://problem/13189092> Toolbar items can be laid out on top of each other with narrow window | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonToolbarItem.css: | |
| (.toolbar.collapsed .item.button > .label): Removed. We only use icon-only now. | |
| * UserInterface/DashboardView.css: | |
| (.toolbar.collapsed .dashboard): Added. Collapses when there is no room. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.updateLayout): Call customUpdateLayout() if it exists. | |
| * UserInterface/Toolbar.css: | |
| (.toolbar .item-section:not(.center)): Removed min-width and made flex be 1. | |
| (.toolbar .item-section.left): Added right margin to prevent touching. | |
| (.toolbar .item-section.center): Make flex be 2 so it can be a different width. | |
| (.toolbar .item-section.right): Added a left margin to prevent touching. | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype.set displayMode): Revert the forced icon-only mode. | |
| (WebInspector.Toolbar.prototype.customUpdateLayout.computeItemWidths): Added. | |
| (WebInspector.Toolbar.prototype.customUpdateLayout.computeSectionWidths): Added. | |
| (WebInspector.Toolbar.prototype.customUpdateLayout): Added. | |
| Computes each section individually for overflow. If any section overflow switch to icon-only | |
| mode when in horizontal-label mode. If any section overflows after that then collapse the | |
| toolbar, which only hides the Dashboard right now. | |
| 2013-03-16 Timothy Hatcher <timothy@apple.com> | |
| Make the labels in the Instruments sidebar be 11px instead of 10px. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| Removed a rule that was making the font-size 10px. Only the Instruments | |
| sidebar triggered this rule. | |
| 2013-03-16 Timothy Hatcher <timothy@apple.com> | |
| Break-up the generation of images and delay the generation of | |
| active images so the initial page load is faster. | |
| <rdar://problem/13436334> Web Inspector takes about 3s to activate | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageUtilities.js: | |
| (.generateImages.generateActiveImages): Added. | |
| (.generateImages): Set a tiemout to call generateActiveImages. | |
| (._generateImages.generateActiveImages): Added. | |
| (._generateImages): Set a tiemout to call generateActiveImages. | |
| 2013-03-15 Timothy Hatcher <timothy@apple.com> | |
| Sort resources by domain before sorting alphabetically by name. | |
| This was suggested by someone on Twitter. It allows local resources to bubble | |
| to the top and external resources (analytic scripts, etc.) to come later. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement): | |
| (WebInspector.GeneralTreeElement.prototype.set mainTitle): | |
| (WebInspector.GeneralTreeElement.prototype.set subtitle): | |
| Fallback to "" for mainTitle and subtitle. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.compareResourceTreeElements): | |
| Sort resources by domain (subtitle) before sorting by name (mainTitle). | |
| 2013-03-15 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-03-14 Timothy Hatcher <timothy@apple.com> | |
| Display em-dashes instead of "0" for resources size and time to make it clear | |
| the values are not known yet. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView.prototype.set time): | |
| (WebInspector.DashboardView.prototype.set resourcesSize): | |
| 2013-03-14 Timothy Hatcher <timothy@apple.com> | |
| Remove references to bottomUpHead. We can build the bottom-up tree locally. | |
| The bottomUpHead is being removed from the protocol by https://webkit.org/b/112351. | |
| Also remove references to TopDownTreeFactory and BottomUpTreeFactory with is dead code. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.prototype.get bottomUpProfileDataGridTree): | |
| 2013-03-14 Timothy Hatcher <timothy@apple.com> | |
| Always specify overflow-x when specifying overflow-y. | |
| Not specifying overflow-x causes it to be auto and can show scrollbars for wide content. | |
| Also use auto instead of scroll in a few places to prevent scroll bars from always being | |
| visible when the system prefers non-overlay scrollbars. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style > .content): | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree.panel .data-container): | |
| * UserInterface/LogContentView.css: | |
| (.console-messages): | |
| * UserInterface/Popover.css: | |
| (.popover > .container): | |
| 2013-03-14 Timothy Hatcher <timothy@apple.com> | |
| Remove the memory placeholder in the toolbar dashboard now that we deferred that feature. | |
| This also evenly distributes the items for a better layout in all modes. | |
| <rdar://problem/13237747> Dashboard items are not evenly distributed | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DashboardView.css: | |
| Overhauled the styles to use flex layout in all cases. | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView): | |
| Removed memory and split resources into resourceCount and resourcesSize. | |
| (WebInspector.DashboardView.prototype.set logs): | |
| (WebInspector.DashboardView.prototype.set issues): | |
| (WebInspector.DashboardView.prototype.set errors): | |
| (WebInspector.DashboardView.prototype.set resourcesCount): | |
| Call _formatPossibleLargeNumber and set the outlet. | |
| (WebInspector.DashboardView.prototype.set resourcesSize): | |
| Set the resourcesSize outlet instead of calling _updateResourcesOutlet. | |
| (WebInspector.DashboardView.prototype._formatPossibleLargeNumber): | |
| Added. This is a better approach to dealing with large numbers than ellipsis. | |
| (WebInspector.DashboardView.prototype._appendElementForNamedItem): | |
| Removed the double div. It is no longer needed to truncate since all the outlets | |
| can't really go larger than 6 characters now. | |
| (WebInspector.DashboardView.prototype._networkItemWasClicked): | |
| Renamed from _timeWasClicked so resourcesSize can use it. | |
| * UserInterface/Images/Weight.svg: Added. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Mark DOM node styles as needing refreshed when an ancestor changes pseudo classes or any attributes change. | |
| <rdar://problem/13412234> REGRESSION: Style details sidebar does not update when ancestor nodes change | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): Add event listeners for all nodes. | |
| (WebInspector.CSSStyleManager.prototype._nodePseudoClassesDidChange): Added. | |
| (WebInspector.CSSStyleManager.prototype._nodeAttributesDidChange): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Remove event listeners on the single node. | |
| (WebInspector.DOMNodeStyles.prototype.pseudoClassesDidChange): Added. | |
| (WebInspector.DOMNodeStyles.prototype.attributeDidChange): Added. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Always refresh the DOM node styles when visibility changes for the sidebar or separate panels. | |
| <rdar://problem/13412234> REGRESSION: Style details sidebar does not update when ancestor nodes change | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): | |
| Call markAsNeedsRefresh instead of the removed refreshIfNeeded. | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel): | |
| (WebInspector.StyleDetailsPanel.prototype.shown): | |
| (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh): | |
| (WebInspector.StyleDetailsPanel.prototype._refreshNodeStyles): Added. | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesNeedsRefreshed): | |
| Remove the concept of having a separate needs refresh flag. Instead we just call refresh on the DOMNodeStyles | |
| and wait for the Refreshed event. This way we always get the latest styles when first showing the panel. | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13421555> Source code links should always show the original location | |
| Location links will now show the original location normally, and | |
| display a mapped / formatted display location in italics when hovered, | |
| but only if such a location exists. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/Main.js: | |
| (WebInspector.createSourceCodeLocationLink): | |
| Use the SourceCodeLocation helpers to keep the contents live. | |
| * UserInterface/Main.css: | |
| (.display-location): | |
| Make display locations italic. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.tooltipString): | |
| (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationTooltip): | |
| (WebInspector.SourceCodeLocation.prototype.populateLiveDisplayLocationString): | |
| Different handlers to keep a tooltip or element property live. | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13418338> Show / Hide Shadow DOM should not change the selected node, or select the earliest ancestor | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeOutline.js: | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13418332> Remove or selectively show "Show Shadow DOM" context menu, there is a nav bar button | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): | |
| (WebInspector.DOMTreeOutline.prototype._populateContextMenu): | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| Improve JavaScript pretty printing of "finally" | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| Provide a SourceCodeLocation helper that keeps an element text up to date. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.setAndKeepElementDisplayLocationStringUpToDate): | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| Let WebInspector.createSourceCodeLocationLink create a goToArrow | |
| Reviewed by Timothy Hatcher. | |
| This allows LayoutTimelineDataGridNode to use createSourceCodeLocationLink | |
| and not remove its children. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/Main.js: | |
| (.updateLinkDisplayStrings): | |
| (WebInspector.createSourceCodeLocationLink): | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| WebInspector.createSourceCodeLocationLink use SourceCodeLocation's full power | |
| Reviewed by Timothy Hatcher. | |
| When a link is created with a source code location we can show the real | |
| location (mapped location, formatted location, original location) and | |
| update the link and tooltip when things change. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): | |
| Switch to from createSourceCodeLink to createSourceCodeLocationLink. | |
| * UserInterface/Main.js: | |
| (WebInspector.createSourceCodeLocationLink): | |
| Update link text and tooltip when the location changes. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype._locationString): | |
| Use SourceCode.displayName and handle source codes without URLs if needed. | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13386143> REGRESSION (CodeMirror): Jump to line / reveal line should reveal closer to the middle of the editor never the top or bottom if possible | |
| If revealLine is called with a line outside the visible set of lines | |
| in the editor then scroll the editor to make that line the center. | |
| This also behaves as expected for lines the start / end of a document. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.shown): | |
| In order for cm.getScrollInfo() values to be valid after an editor is | |
| reattached to the DOM Hierarchy we have to call refresh, and because of | |
| the way CodeMirror works (coalescing changes in operations) the | |
| getScrollInfo is only valid after the refresh operation. So remove the | |
| wrapping operation here. | |
| (WebInspector.TextEditor.prototype.set formatted): | |
| If you pretty print a document do not send a change event and | |
| cause the value to be sent to the backend. The frontend style | |
| sidebar expects line and column numbers for the original | |
| unformatted document. | |
| (WebInspector.TextEditor.prototype.revealAndHighlightLine): | |
| (WebInspector.TextEditor.prototype.revealLine): | |
| (WebInspector.TextEditor.prototype._scrollIntoViewCentered): | |
| (WebInspector.TextEditor.prototype._prettyPrint): | |
| In revealLine or prettyPrint when we move the selection make a decision | |
| whether or not to scroll the editor to put that line in the center. | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| Update CodeMirror to ToT (v3.1+) which includes some JavaScript language and selection fixes | |
| <rdar://problem/13396332> CodeMirror: Selection on lines that wrap more than once is incorrect | |
| Rubber-stamped by Timothy Hatcher. | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| * UserInterface/External/CodeMirror/javascript.js: | |
| 2013-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13410237> REGRESSION: Editing CSS resources no longer works (it is read-only) | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set readOnly): | |
| 2013-03-14 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13410257> Display the reason why a layer is composited | |
| Retrieve the reason why the selected layer in the layer tree sidebar | |
| panel is composited and display them in a popover anchored to the | |
| selected data grid node, removing the popover when the inspector | |
| loses focus or the data grid node is no longer selected. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Add new strings used to display the various compositing reasons. | |
| * UserInterface/InspectorBackendCommands.js: | |
| Add new LayerTree.reasonsForCompositingLayer() protocol method. | |
| * UserInterface/LayerTreeManager.js: | |
| (WebInspector.LayerTreeManager.prototype.reasonsForCompositingLayer): | |
| Wrapper for the new LayerTree.reasonsForCompositingLayer() protocol | |
| method. | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree-popover): | |
| (.layer-tree-popover p): | |
| (.layer-tree-popover ul): | |
| (.layer-tree-popover li): | |
| Styles for the content displayed in a popover to show the compositing | |
| reasons for the selected layer. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._selectedDataGridNodeChanged): | |
| On top of highlighting the appropriate region in the canvas for the | |
| selected layer, also show a popover with the reasons why it was | |
| composited or remove the popover if there are no selected layers. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridGainedFocus): | |
| Show the popover for the selected data grid node. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridLostFocus): | |
| Hide the popover. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._showPopoverForSelectedNode): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._hidePopover): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._populateListOfCompositingReasons): | |
| Show a popover listing the compositing reasons for the selected layer | |
| anchored to the selected data grid node. The content of the popover | |
| is provided after the call to the agent to retrieve the reasons for | |
| compositing has returned. | |
| * UserInterface/Popover.css: | |
| (.popover): | |
| (.popover.arrow-up): | |
| (.popover.arrow-right): | |
| (.popover.arrow-down): | |
| (.popover.arrow-left): | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover.prototype.area): | |
| (WebInspector.Popover.prototype.present): | |
| (WebInspector.Popover.prototype._bestMetricsForEdge): | |
| Miscellaneous enhancements for better popover behavior where we correctly | |
| round up the metrics for the hosted content, ensure we interrupt a dismiss | |
| animation when presenting the popover again, and change the sizing behavior | |
| to take into account the various padding metrics applied as a result of | |
| picking a given edge. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Don't wait until DOMContentLoaded to do non-UI initialization when loading the Web Inspector. | |
| Part of: <rdar://problem/13412219> REGRESSION: Opening the Web Inspector takes 5s | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| Moved extra MIME-type registration here. | |
| * UserInterface/Main.html: | |
| Added a inline script to call WebInspector.loaded(). This needs to be outside of Main.js so it | |
| comes after the scripts added via document.write when Main.js is a combined file. | |
| * UserInterface/Main.js: | |
| (WebInspector.loaded): Added. Moved code from contentLoaded. | |
| (WebInspector.contentLoaded): Moved code to loaded. | |
| (WebInspector._windowResized): Call _contentBrowserSizeDidChange to avoid registering for resize twice. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Add selected images for UserInputResult.pdf and UserInputPromptPrevious.pdf. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/UserInputPromptPreviousSelected.pdf: Added. | |
| * UserInterface/Images/UserInputResultSelected.pdf: Added. | |
| * UserInterface/LogContentView.css: | |
| (.console-messages:focus .console-item.selected .console-user-command-result.console-log-level::before): | |
| (.console-messages:focus .console-item.selected .console-user-command::before): | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Make copy work in the split console. | |
| <rdar://problem/13411428> Copy does not work if the console is in split view | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector._focusedContentView): Added. | |
| (WebInspector._beforecopy): Structure more like _copy. Use _focusedContentView. | |
| (WebInspector._copy): Use _focusedContentView. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Remove old focus tracking code in EditingSupport.js and start tracking currentFocusElement | |
| and previousFocusElement in Main.js's _focusChanged handler. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.startEditing.cleanUpAfterEditing): Use restoreFocusFromElement(). | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt.prototype.focus): Use focus(). | |
| * UserInterface/Main.js: | |
| (WebInspector.restoreFocusFromElement): Added. | |
| (WebInspector._focusChanged): Set currentFocusElement and previousFocusElement. | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.prototype._startEditing): Use focus(). | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Fix some things with the new console selection behavior. | |
| * Makes sure all disclosure triangles and text are white when the row selection is blue. | |
| * Makes sure all disclosure triangles and text are normal when the row selection is gray. | |
| * Fixes a bug where click would cause the row to jump between top and bottom reveal instead of | |
| toggling a clicked disclosure triangle. | |
| * Only expand recursively if the Option key is pressed. This matches the TreeOutline code. | |
| * Collapse recursively if the option key is pressed. | |
| * Better aligns the disclosure triangles with DOM tree nodes. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/LogContentView.css: | |
| (.console-messages): | |
| (.console-item.selected): | |
| (.console-messages:focus .console-item.selected *): | |
| (.console-group-title::before): | |
| (.console-messages:focus .console-item.selected .console-group-title::before): | |
| (.console-messages:focus .console-group.collapsed .console-item.selected .console-group-title::before): | |
| (.console-messages:focus .console-item.selected .section .header .title): | |
| (.console-message-url): | |
| (.console-messages:focus .console-item.selected .section .header::before): | |
| (.console-messages:focus .console-item.selected .section.expanded .header::before): | |
| (.console-messages:focus .console-item.selected .properties-tree li.parent::before): | |
| (.console-messages:focus .console-item.selected .properties-tree li.parent.expanded::before): | |
| (.outline-disclosure li.parent::before): | |
| (.console-messages:focus .console-item.selected .outline-disclosure li.parent::before): | |
| (.console-messages:focus .console-item.selected .outline-disclosure li.parent.expanded::before): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| Use focus() instead of setCurrentFocusElement. The setCurrentFocusElement function is legacy and | |
| should be removed someday. | |
| (WebInspector.LogContentView.prototype._updateMessagesSelection): | |
| Don't call _ensureMessageIsVisible if the message was already selected from the start. | |
| (WebInspector.LogContentView.prototype._rightArrowWasPressed): | |
| (WebInspector.LogContentView.prototype._leftArrowWasPressed): | |
| Only expand or collapse recursively if the Option key is pressed. | |
| 2013-03-13 Timothy Hatcher <timothy@apple.com> | |
| Tweak the New Rule behavior in the Style details sidebar. | |
| Makes sure to scroll to reveal the section when it is focused. Also use appropriateSelectorFor | |
| instead of displayNameForNode to generate better selectors. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.addRule): Use appropriateSelectorFor. | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.scrollToFocusedSection): Added. | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Call scrollToFocusedSection on a timeout. | |
| 2013-03-13 Antoine Quint <graouts@apple.com> | |
| Make the "Memory" outlet at the bottom of the layer tree | |
| sidebar panel align to the right as expected. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeSidebarPanel.css: | |
| (.layer-tree.panel .layers-memory-label): | |
| 2013-03-13 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13410203> Correctly identify layers for generated and reflected content | |
| We now correctly identify layers as reflected content and/or generated | |
| content with a more appropriate name in the "child layers" data grid. | |
| Additionally, we highlight the bounds of the layer on the page to | |
| clearly identify what this reflection or generated content is on the | |
| canvas. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| New localized string used to identify reflections layers. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype.highlightRect): | |
| New method wrapping DOMAgent.highlightRect(). | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| Further qualify the layer by adding either the ::before or ::after | |
| pseudo-class for layers that are associated to generated content as | |
| well as a localized "Reflection for" prefix for reflected layers. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._highlightSelectedNode): | |
| Check what type of layer is now selected and call the new | |
| DOMTreeManager.highlightRect() method in case we're dealing with a | |
| reflection or generated layer. | |
| 2013-03-13 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13209485> Layer Tree sidebar should respect "show-shadow-dom" setting | |
| The layer tree sidebar panel data grid now respects the | |
| "show-shadow-dom" setting. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel): | |
| Track changes for the "show-shadow-dom" setting. | |
| (WebInspector.LayerTreeSidebarPanel.prototype.refresh): | |
| Keep track of the unfiltered set of child layers returned when calling | |
| into the LayerTreeAgent such that we can reuse this unfiltered list | |
| of child layers layer as the "show-shadow-dom" setting changes. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._showShadowDOMSettingChanged): | |
| Update the display such that the new setting is taken into account. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDisplayWithLayers): | |
| Filter the list of child layers to take into account the | |
| "show-shadow-dom" setting. We also keep track of the layer for | |
| the current node in the new "_layerForNode" property such that | |
| it may be used to call into this method again when we need to | |
| update the shadow DOM filter without querying the backend again. | |
| 2013-03-13 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13409543> Adopt new LayerTreeAgent protocol | |
| We remove all code related to the previous LayerTreeAgent protocol where | |
| we'd use the LayerTree.getLayerTree() and LayerTree.nodeIdForLayerId() | |
| methods which have now been replaced by a single method to provide the | |
| layers in the scope of a given DOM subtree with LayerTree.layersForNode(). | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Remove the strings related to composited layers since the protocol now | |
| only provides composited layers. | |
| * UserInterface/InspectorBackendCommands.js: | |
| Remove the old LayerTree.getLayerTree() and LayerTree.nodeIdForLayerId() | |
| protocol methods and add the new LayerTree.layersForNode() method. | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode.prototype.get layer): | |
| New public accessor for the "_layer" property such that the | |
| LayerTreeSidebarPanel may access properties of the selected data grid | |
| node's layer. | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| Remove the check for a valid node since the protocol ensures that layers | |
| now have a valid nodeId pushed to the front-end. We're also removing the | |
| redundant "layerData" property by just letting the layer be accessible | |
| via a public accessor. | |
| (WebInspector.LayerTreeDataGridNode.prototype._goToArrowWasClicked): | |
| Use the "_layer" property to find out the nodeId rather than the removed | |
| "layerData" property. | |
| * UserInterface/LayerTreeManager.js: | |
| (WebInspector.LayerTreeManager): | |
| Remove the hard-coded disabling of the LayerTree features in the front-end | |
| and instead use a real run-time check for availability of the LayerTreeAgent. | |
| We also remove some ivars we no longer use. | |
| (WebInspector.LayerTreeManager.prototype.layerTreeMutations): | |
| Complete rewrite of the method to account for the richer set of | |
| information exposed by the new protocol. We now have to take into account | |
| much more than just layer ids to indentify mutations, node ids should also | |
| be taken into account to check if a layer for the same node has appeared | |
| with a new layer id (as it may have been destroyed and recreated for a | |
| content update). We also need to take into account generated content and | |
| reflections, which may have pseudo element ids. | |
| (WebInspector.LayerTreeManager.prototype.layersForNode): | |
| New wrapper for the new LayerTreeAgent.layersForNode() protocol method. | |
| (WebInspector.LayerTreeManager.prototype.layerTreeDidChange): | |
| We no longer obtain the layer tree upon a change, we merely dispatch | |
| an event indicating that the layer tree has changed. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel): | |
| Remove the setting to only show composited layers since the protocol now | |
| only returns composited layers. | |
| (WebInspector.LayerTreeSidebarPanel.prototype.refresh): | |
| Retrieve layers from the agent and update our display with the result. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._layerTreeDidChange): | |
| Mark that we need a refresh following a change in the layer tree. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection): | |
| No longer show the "Composited" row since all layers are now composited. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection): | |
| No longer build the "only show composited layers" checkbox. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._highlightSelectedNode): | |
| Use the now-public "layer" property on the LayerTreeDataGridNode to | |
| look up layer information for sorting. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDisplayWithLayers): | |
| Keep track of the new child layers in a "_childLayers" property. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateLayerInfoSection): | |
| Remove the checks for composited since all layers are now composited. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateMetrics): | |
| Update to use new properties on layer objects per the change in protocol. | |
| 2013-03-13 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12886275> Selecting errors in the console doesn't select the error and the filename | |
| In order to be able to provide custom content to the clipboard for console messages, | |
| we must also allow selection of console messages in a different way than via text | |
| selection. In this patch, we make the list of messages selectable, supporting the | |
| selection types one would expect from a desktop application. I go into the details | |
| of what features exactly are implemented in the per-method discussion below. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleCommand.js: | |
| (WebInspector.ConsoleCommand.prototype.toClipboardString): | |
| Adopt the protocol to provide a custom clipboard string in the form of | |
| "> theJSCommand();". | |
| * UserInterface/ConsoleCommandResult.js: | |
| (WebInspector.ConsoleCommandResult.prototype.toClipboardString): | |
| Adopt the protocol to provide a custom clipboard string in the form of | |
| "< theCommandResult". | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup.prototype.addMessage): | |
| Wrap individual messages in a group within a wrapper element with a "console-item" | |
| CSS class. These elements are used to apply a "selected" or "filtered-out" class and | |
| to draw the full-width borders on the items. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._formatMessage): | |
| Refactor to use new _shouldDumpStackTrace() method. | |
| (WebInspector.ConsoleMessageImpl.prototype._shouldDumpStackTrace): | |
| New method to share logic once used only in _formatMessage() with | |
| toClipboardString() as well. | |
| (WebInspector.ConsoleMessageImpl.prototype.toString): | |
| Refactor to use new "levelString" property. | |
| (WebInspector.ConsoleMessageImpl.prototype.get levelString): | |
| New accessor to share logic once used only in toString() with toClipboardString() | |
| as well. | |
| (WebInspector.ConsoleMessageImpl.prototype.toClipboardString): | |
| Adopt the protocol to provide a custom clipboard string where we log the level, | |
| message text, url, line number and optionally the stack frames. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.appendConsoleMessage): | |
| Return the cloned message so that we may manipulate it from call sites (ie. in | |
| LogContentView.prototype._messageAdded()). | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Fix a | |
| missing semi-colon. | |
| * UserInterface/LogContentView.css: | |
| (.console-messages): | |
| Remove useless properties. | |
| (.console-item): | |
| Basic style for all console item wrappers, draw a 1px bottom border. | |
| (.console-item.selected): | |
| Background color for selected items when the container doesn't have focus (gray). | |
| (.console-messages:focus .console-item.selected): | |
| Background color for selected items when the container has focus (blue). | |
| (.console-messages:focus .console-item.selected *): | |
| Make all text in selected items white. | |
| (.console-item.selected .console-group-title::before): | |
| Use a white triangle for selected items. | |
| (.console-group.collapsed .console-item.selected .console-group-title::before): | |
| Use a white triangle for selected items. | |
| (.console-item.selected .console-error-level .section .header .title): | |
| Ensure text is white in selected items. | |
| (.console-item.selected .console-debug-level .console-message-text): | |
| Ensure text is white in selected items. | |
| (.auto-complete-text, .editing .auto-complete-text): | |
| Remove useless property. | |
| (.console-item.selected .outline-disclosure li.parent::before): | |
| Use a white triangle for selected items. | |
| (.console-item.selected .outline-disclosure li.parent.expanded::before): | |
| Use a white triangle for selected items. | |
| (.console-item.filtered-out): | |
| Remove all filtered-out items from layout. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| New ivars to track the current nesting level and the list of all selected message | |
| elements. We also start tracking a series of keyboard and mouse events on the | |
| messages container to implement multiple selection of message elements. | |
| (WebInspector.LogContentView.prototype.updateLayout): | |
| Override this ContentView method to track the height of the messages container | |
| in order to update the scroll position of the container as we ensure the visibility | |
| of selected items. | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): | |
| Manually nest the messages hosted in wrappers and keep track of the nesting level | |
| as groups are opened and closed. We also clear all focusable children there as new | |
| content may have been added with markup using the "tabindex" attributes. | |
| (WebInspector.LogContentView.prototype.handleCopyEvent): | |
| Provide custom content to the clipboard based on the clipboard text of each message | |
| in the selected messages list in DOM order. | |
| (WebInspector.LogContentView.prototype._messageAdded): | |
| Ensure newly added messages are filtered out in case they don't match the selected | |
| filters in the scope bar. | |
| (WebInspector.LogContentView.prototype._mousedown): | |
| Event handler for the "mousedown" event on the messages container. We ignore user | |
| interaction if we would otherwise show a contextual menu, and ensure the messages | |
| container has focus otherwise. In case we're getting focus now and we already had | |
| selected elements, we go no further. Otherwise, we figure out which message was | |
| under the mouse pointer and track that we should prevent a "click" event from being | |
| dispatched in case the message was not yet selected. This ensures that we don't | |
| collapse/expand an outline and select at the same time. We then update the message | |
| selection state and track further mouse interaction. If we detect we didn't click on | |
| a message, ie. the empty area of the messages container, we clear the selection list. | |
| (WebInspector.LogContentView.prototype._mousemove): | |
| Get the message element under the mouse pointer, if any, and update the messages | |
| selection list so that we select messages from the first element we moused down | |
| on to this one. | |
| (WebInspector.LogContentView.prototype._mouseup): | |
| Stop tracking any further "mousemove" and "mouseup" events as the selection-by-mouse | |
| interaction draws to an end. | |
| (WebInspector.LogContentView.prototype._click): | |
| Prevent the propagation of "click" events if we established in the "mousedown" event | |
| handler that we should have. | |
| (WebInspector.LogContentView.prototype.handleEvent): | |
| Router for mouse "mousemove" and "mouseup" events. | |
| (WebInspector.LogContentView.prototype._updateMessagesSelection): | |
| Method that updates the selected state of the provided message based on whether | |
| we're allowing multiple selection (Cmd+click) and range selection | |
| (Shift+click/arrow-up/arrow-down). | |
| (WebInspector.LogContentView.prototype._ensureMessageIsVisible): | |
| Scrolls the messages container as necessary to reveal the provided message. We avoid | |
| getting metrics from CSS as much as possible by using the positiong of the message | |
| directly after the provided one since we can get that information via | |
| _positionForMessage() without triggering a style recalc. In the case where we want to | |
| ensure the last message is visible, we have no other resort but to query its height. | |
| (WebInspector.LogContentView.prototype._positionForMessage): | |
| Get the position of the given message in the coordinate system established by the | |
| messages container. | |
| (WebInspector.LogContentView.prototype._isMessageVisible): | |
| Indicates whether the provided message is visible (ie. not filtered-out or within a | |
| collapsed group). | |
| (WebInspector.LogContentView.prototype._isMessageSelected): | |
| Indicates whether the provided message is selected. | |
| (WebInspector.LogContentView.prototype._selectAllMessages): | |
| Selects all visible messages. | |
| (WebInspector.LogContentView.prototype._allMessages): | |
| All the messages in the messages container as an Array. | |
| (WebInspector.LogContentView.prototype._allVisibleMessages): | |
| All visible messages in the messages container as an Array. | |
| (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange): | |
| Filter messages as the selected filters in the scope bar have changed. | |
| (WebInspector.LogContentView.prototype._filterMessages): | |
| Filter the messages based on scope bar filters selection. We ensure commands and | |
| results are always visible, no matter what filters are selected. | |
| (WebInspector.LogContentView.prototype._didFocus): | |
| Track that the messages container is focused. | |
| (WebInspector.LogContentView.prototype._didBlur): | |
| Track that the messages container is not focused. | |
| (WebInspector.LogContentView.prototype._keyDown): | |
| Event handler for the "keydown" event, used to route to the more specific handlers. | |
| (WebInspector.LogContentView.prototype._commandAWasPressed): | |
| Event handler for Cmd+A key combination, selects all visible messages. | |
| (WebInspector.LogContentView.prototype._escapeWasPressed): | |
| Event handler for the Esc. key being pressed, clears the selection if there are | |
| any selected messages, otherwise moving focus to the command prompt. | |
| (WebInspector.LogContentView.prototype._upArrowWasPressed): | |
| Event handler for the up arrow key being pressed, selects the message above, or add | |
| it to the selection list if the shift key is selected. | |
| (WebInspector.LogContentView.prototype._downArrowWasPressed): | |
| Event handler for the down arrow key being pressed, selects the message below, or add | |
| it to the selection list if the shift key is selected. | |
| (WebInspector.LogContentView.prototype._leftArrowWasPressed): | |
| Event handler for the left arrow key veing pressed, collapses the current group or | |
| message with stack trace. Otherwise, does nothing. | |
| (WebInspector.LogContentView.prototype._rightArrowWasPressed): | |
| Event handler for the right arrow key veing pressed, expands the current group or | |
| message with stack trace. Otherwise, does nothing. | |
| (WebInspector.LogContentView.prototype._previousMessage): | |
| Traverses the list of visible messages until we find a message located prior to | |
| the provided message. | |
| (WebInspector.LogContentView.prototype._nextMessage): | |
| Traverses the list of visible messages until we find a message located after to the | |
| provided message. | |
| (WebInspector.LogContentView.prototype._clearFocusableChildren): | |
| Remove the "tabindex" attribute on all elements located within the messages container | |
| to ensure no element can steal focus away from the messages container and mess with our | |
| handling of keyboard events. | |
| 2013-03-12 Timothy Hatcher <timothy@apple.com> | |
| Don't truncate the suggestions menu when it gets close to the right edge. | |
| Restore a line that was removed that we needed after all to get the right behavior. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/CompletionSuggestionsView.js: | |
| (WebInspector.CompletionSuggestionsView.prototype.show): Update width after maximumWidth changes. | |
| 2013-03-12 Timothy Hatcher <timothy@apple.com> | |
| Prevent style text from shifting as properties are marked with checkboxes. | |
| This marks blanks lines in editable styles with a placeholder that is the same | |
| size as the checkbox. When a checkbox is added the placeholder is removed. That | |
| switch keeps the text in the same position and looks superb! | |
| This also forces checkboxes to be visible when the editor has focus, not just hovered. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .checkbox-placeholder): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._clearTextMarkers): Added all | |
| param so we don't clear placeholder in all cases, only when doing a reset. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Call | |
| _removeCheckboxPlaceholder. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): Call | |
| _markBlankLinesWithCheckboxPlaceholder. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._markBlankLinesWithCheckboxPlaceholder): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._removeCheckboxPlaceholder): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Call | |
| _markBlankLinesWithCheckboxPlaceholder and pass true for _clearTextMarkers's all param. | |
| 2013-03-12 Timothy Hatcher <timothy@apple.com> | |
| Improve the load time of the Web Inspector by loading localizedString.js sooner. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LoadLocalizedStrings.js: Added. | |
| * UserInterface/Main.html: Include LoadLocalizedStrings.js before Main.js. | |
| * UserInterface/Main.js: Don't dynamically load localizedString.js. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Disable auto completion inside comments. | |
| <rdar://problem/13387317> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): Return early inside comments. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Don't highlight autocompletion items on hover. Only highlight them when active. | |
| <rdar://problem/13387350> CSS autocompletion can be confusing if mouse cursor is hidden and hovering completion menu | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CompletionSuggestionsView.css: | |
| (.completion-suggestions-container:not(:active) > .item.selected, | |
| .completion-suggestions-container > .item:active): Renamed from being hover to active. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Workaround <rdar://problem/13392441> so Images and Fonts don't get cut off at the top. | |
| We can get the expected result by using margin: 0 auto until the behavior of -webkit-align-items | |
| is hashed out more. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FontResourceContentView.css: | |
| (.content-view.resource.font): Remove -webkit-align-items: center and use margin: 0 auto. | |
| (.content-view.resource.font .preview): Change 13px to 15px to be less arbitrary. | |
| * UserInterface/ImageResourceContentView.css: | |
| (.content-view.resource.image): Ditto. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Make SVG fonts work in the Web Inspector. | |
| <rdar://problem/13392056> SVG fonts are not rendered when selected | |
| Reviewed by Jon Lee. | |
| * UserInterface/FontResourceContentView.js: | |
| (WebInspector.FontResourceContentView.prototype.contentAvailable): Supply format("svg") when we | |
| know we are loading an SVG font. This seems to be required for SVG fonts. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Don't allow setting a rule's selector to an empty string. | |
| <rdar://problem/13387384> When editing a selector to be the empty string, nothing is committed - UI should reflect that | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| (.style-declaration-section > .header > .selector:empty): Added. | |
| (.style-declaration-section > .header > .selector:empty::before): Added. | |
| * UserInterface/CSSStyleDeclarationSection.js: | |
| (WebInspector.CSSStyleDeclarationSection.prototype._commitSelector): Call refresh if the selector is empty. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Ignore Shift-Tab in CodeMirror instances since it does unexpected things. | |
| <rdar://problem/13387373> CSS editor typing Shift+Tab adds weird pre-indent | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| (ignoreKey): Added. | |
| 2013-03-11 Timothy Hatcher <timothy@apple.com> | |
| Improve the wrapping of the pseudo class checkboxes. | |
| Also make sure the scroll logic handles the different heights possible. | |
| <rdar://problem/13383635> Pseudo class checkboxes should wrap better with narrow sidebar (never 3x1 & 1x1) | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style > .content > .pseudo-classes): Switch to flex layout. | |
| (.sidebar > .panel.details.css-style > .content > .pseudo-classes > .group): Added. | |
| (.sidebar > .panel.details.css-style > .content > .pseudo-classes > .group > label): Split the margin on each side. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Create group elements of up to two labels each. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): Call _updateNoForcedPseudoClassesScrollOffset. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.widthDidChange): Ditto. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._updateNoForcedPseudoClassesScrollOffset): Update the height. | |
| 2013-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11720808> REGRESSION (Safari 6): Conditional breakpoints UI missing | |
| Add back conditional breakpoints UI. The UI is modeled after Xcode's | |
| "Edit Breakpoint" context menu and popover UI. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): | |
| (WebInspector.Breakpoint.prototype.get condition): | |
| (WebInspector.Breakpoint.prototype.set condition): | |
| (WebInspector.Breakpoint.prototype.get info): | |
| Give a breakpoint a condition, mutators, and save the condition in | |
| the breakpoint info. | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems): | |
| Add a context menu item for "Edit Breakpoint". | |
| (WebInspector.Breakpoint.prototype._popoverToggleCheckboxChanged): | |
| (WebInspector.Breakpoint.prototype._popoverConditionInputChanged): | |
| (WebInspector.Breakpoint.prototype._editBreakpointPopoverContentElement): | |
| (WebInspector.Breakpoint.prototype._showEditBreakpointPopover): | |
| Generate the popover content and show the popover. | |
| * UserInterface/Breakpoint.css: Added. | |
| (.popover .edit-breakpoint-popover-content): | |
| (.popover .edit-breakpoint-popover-content > label.toggle): | |
| (.popover .edit-breakpoint-popover-content > table): | |
| (.popover .edit-breakpoint-popover-content > table > tr > th): | |
| (.popover .edit-breakpoint-popover-content > table > tr > td): | |
| (#edit-breakpoint-popover-condition): | |
| Styles for the edit breakpoint popover. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement.prototype.oncontextmenu): | |
| Pass the breakpoint element in the display so that if a popover needs | |
| to be shown, we have the bounds of an element to show it for. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.isBreakpointEditable): | |
| Never allow setting a condition on the special breakpoints. | |
| (WebInspector.DebuggerManager.prototype._breakpointConditionDidChange): | |
| (WebInspector.DebuggerManager.prototype._breakpointConditionDidChange.breakpointRemoved): | |
| To set the condition delete the old breakpoint and set a new breakpoint | |
| with the new condition. The WebInspector.Breakpoint will get an updated id. | |
| * UserInterface/Main.html: | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Include new files and strings. | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| Add a "Select Output" button to PrettyPrinting tools. | |
| The new button make copying the entire output easier. Useful for saving | |
| before and after contents to see changes. Also update the formatter and | |
| clean up some style issues. | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| * Tools/PrettyPrinting/index.html: | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| Pretty printing: Don't try to be smart about unary +/-. | |
| This was causing some simple expressions like "1+1" or "foo+1" to | |
| become "1 +1" and "foo +1" instead of the expected "1 + 1" and | |
| "foo + 1". The most common unary expressions negative numbers, | |
| are parsed as a single token by CodeMirror anyways, so drop the | |
| special case in the formatter. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| Remove the special case that tried to handle unary +/-. | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| Update the PrettyPrinting Tool with new formatter changes. | |
| Unreviewed tools change. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: | |
| * Tools/PrettyPrinting/Formatter.js: | |
| (Formatter.prototype._handleToken): | |
| (Formatter.prototype._handleEmptyLine): | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| Pretty Printing: switch from startsWith to regex matching for tokens | |
| This addresses a review comment that using startsWith for checking | |
| token types is brittle and we should check the entire string. The | |
| performance impact was negligible on JavaScript and minor on CSS, | |
| so it is worth making the change to make the code less brittle. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/Formatter.js: | |
| (Formatter.prototype._handleToken): | |
| (Formatter.prototype._handleEmptyLine): | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| Add Pretty Printing Debug Page to WebInspector/Tools/PrettyPrinting | |
| The pretty printing files in the Inspector can be run independently of | |
| the Inspector. The only requirements are CodeMirror, its modes, and a | |
| few Utility functions. This provides a separate tool that makes it | |
| easier to debug and benchmark pretty printing without needing to run | |
| the entire inspector. By default it includes some debug information | |
| that will speed up debugging and make making improvements easier. | |
| Rubber-stamped by Timothy Hatcher. | |
| * Tools/PrettyPrinting/CodeMirrorFormatters.js: Added. | |
| * Tools/PrettyPrinting/Formatter.js: Added. | |
| * Tools/PrettyPrinting/FormatterContentBuilder.js: Added. | |
| * Tools/PrettyPrinting/codemirror.css: Added. | |
| * Tools/PrettyPrinting/codemirror.js: Added. | |
| * Tools/PrettyPrinting/css.js: Added. | |
| * Tools/PrettyPrinting/javascript.js: Added. | |
| CodeMirror and WebInspector pretty printing files copied with only | |
| minor tweaks (debugging code). | |
| * Tools/PrettyPrinting/populate/apple.css: Added. | |
| * Tools/PrettyPrinting/populate/jquery.min.js: Added. | |
| Useful JavaScript and CSS content to populate the editor with. The | |
| contents are decent stress tests for coverage and benchmarking. | |
| jQuery is already in Safari for other tools, and apple.com's CSS | |
| is Apple source. These files are just included as test data. | |
| * Tools/PrettyPrinting/index.html: Added. | |
| Driver. Includes an editor, some buttons, and outputs results. | |
| 2013-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13375942> Pretty printing: Search results highlight wrong text range and highlight wrong line | |
| Provide a SourceCodeTextRange. This contains start and end SourceCodeLocation | |
| objects and uses those to provide raw, formatted, and mapped (display) | |
| WebInspector.TextRanges and events when the range bounds change. | |
| Search results coming from the backend have the original content and so | |
| include raw text range information. When we jump to the source code we | |
| will want to reveal and highlight the formatted line. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMSearchMatchObject.js: | |
| (WebInspector.DOMSearchMatchObject): | |
| (WebInspector.DOMSearchMatchObject.prototype.get sourceCodeTextRange): | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| (WebInspector.ResourceSearchMatchObject): | |
| (WebInspector.ResourceSearchMatchObject.prototype.get sourceCodeTextRange): | |
| Switch these to create and hold a SourceCodeTextRange. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeTextRange): | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): | |
| When selecting a SearchMatchObject reveal and select the formatted range. | |
| It may be jarring to the user to see a search result for something and | |
| jump to the mapped (display) location which may not contain the search term. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement): | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): | |
| Be aware that the represented SearchMatchObject has a sourceCodeTextRange | |
| now. But we are provided line content from the original resource, so in | |
| highlighting the search string use the original resource's text range. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.createSourceCodeTextRange): | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype.createSourceCodeTextRange): | |
| Helpers for creating a SourceCodeTextRange by providing an unformatted | |
| TextRange in the given resource. Automatically takes care of SourceMaps. | |
| * UserInterface/SourceCodeTextRange.js: Added. | |
| (WebInspector.SourceCodeTextRange): | |
| (WebInspector.SourceCodeTextRange.prototype.get sourceCode): | |
| (WebInspector.SourceCodeTextRange.prototype.get textRange): | |
| (WebInspector.SourceCodeTextRange.prototype.get formattedTextRange): | |
| (WebInspector.SourceCodeTextRange.prototype.get displaySourceCode): | |
| (WebInspector.SourceCodeTextRange.prototype.get displayTextRange): | |
| (WebInspector.SourceCodeTextRange.prototype._startAndEndLocationsInSameMappedResource): | |
| (WebInspector.SourceCodeTextRange.prototype._sourceCodeLocationChanged): | |
| SourceCodeTextRange matching SourceCodeLocation's semantics. | |
| 2013-03-09 Timothy Hatcher <timothy@apple.com> | |
| Don't flash red strikethrough when actively editing a style. | |
| <rdar://problem/13385762> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .editing-line .css-style-declaration-property.invalid): Renamed. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._clearRemoveEditingLineClassesTimeout): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._removeEditingLineClasses): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._removeEditingLineClasses.removeEditingLineClasses): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._removeEditingLineClassesSoon): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): Add EditingLineStyleClassName to the changed line. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateProperties): Call _removeEditingLineClassesSoon. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Call _removeEditingLineClasses. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint): Don't add line CompletionPendingStyleClassName. | |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): Remove call to _removePendingCompletionLineStyleClass. | |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint): Ditto. | |
| (WebInspector.CodeMirrorCompletionController.prototype._removePendingCompletionLineStyleClass): Removed. | |
| 2013-03-09 Timothy Hatcher <timothy@apple.com> | |
| Prevent CSS autocompletion from interfering with the undo/redo history. | |
| We now remove any changes we programmatically do from the undo history. | |
| And before undo or redo we make sure to hide the completions so the editor | |
| is back to the state that matches the history. | |
| <rdar://problem/13384296> CSS Autocompletion causes unexpected Undo behavior | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController): Hook up _handleHideKey to the standard | |
| undo and redo shortcuts. Also hook up select all so it goes through instead of being | |
| blocked by _handleCursorActivity. | |
| (WebInspector.CodeMirrorCompletionController.prototype.get _currentReplacementText): Added. | |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update): Call | |
| _removeLastChangeFromHistory after replaceRange. | |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint.update): Added. | |
| Replace the prefix with the full completion text. Don't call _removeLastChangeFromHistory. | |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): Call update. | |
| (WebInspector.CodeMirrorCompletionController.prototype._removeLastChangeFromHistory): Added. | |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.update): Call | |
| _removeLastChangeFromHistory after each replaceRange. | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): Call | |
| _removeCompletionHint before getting the cursor so any cursor changes are done first. | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleHideKey): Added. Hide the completions | |
| and pass through to other the standard handlers. | |
| 2013-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12463631> REGRESSION: Subframes don't show the DOM tree | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree): | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode): | |
| (WebInspector.DOMTree.prototype._requestRootDOMNodeInternal): | |
| (WebInspector.DOMTree.prototype._frameMainResourceDidChange): | |
| (WebInspector.DOMTree.prototype._frameExecutionContextChanged): | |
| If we are a subframe we must wait for a context execution identifier | |
| to do the RuntimeAgent.evaluate to get the document. So we may need | |
| to wait for it. Switch to invoke and clarify we use frameId for | |
| iOS 6 backwards compatibility. | |
| * UserInterface/ExecutionContext.js: Added. | |
| (WebInspector.ExecutionContext): | |
| (WebInspector.ExecutionContext.supported): | |
| (WebInspector.ExecutionContext.prototype.get id): | |
| (WebInspector.ExecutionContext.prototype.get name): | |
| (WebInspector.ExecutionContext.prototype.get isPageContext): | |
| (WebInspector.ExecutionContext.prototype.get frame): | |
| WebInspector.Object class for Runtime.ExecutionContextDescription type. | |
| This was unavailable in iOS 6, so add a static "supported" function. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.initialize): | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): | |
| Clear executino contexts on initialize, navigating, and detaching (manager). | |
| (WebInspector.Frame.prototype.get mainExecutionContext): | |
| (WebInspector.Frame.prototype.get executionContexts): | |
| (WebInspector.Frame.prototype.clearExecutionContexts): | |
| (WebInspector.Frame.prototype.addExecutionContext): | |
| A frame may have multiple execution contexts. One for each world. We consider | |
| the first execution context we receive for a frame to be the main one. | |
| (WebInspector.Frame.prototype.get executionContextIdentifier): | |
| Backwards compatible execution context identifier. Null if not yet resolved. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): | |
| When detaching a page, clear the execution contexts. | |
| (WebInspector.FrameResourceManager.prototype.executionContextCreated): | |
| Set the execution context on a frame if provided. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| Register a "Runtime" domain observer and enable it when it is available. | |
| * UserInterface/RuntimeObserver.js: Added. | |
| (WebInspector.RuntimeObserver): | |
| (WebInspector.RuntimeObserver.prototype.executionContextCreated): | |
| Add a new Observer for "Runtime" domain events. | |
| 2013-03-08 Timothy Hatcher <timothy@apple.com> | |
| <rdar://problem/13381025> REGRESSION (Safari 6): Bottom-up profiling option missing | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Images/BottomUpTree.pdf: Added. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.prototype.get navigationItems): Added. Return percent | |
| and bottom up item. | |
| (WebInspector.JavaScriptProfileView.prototype._toggleBottomUpView): Added. Flip the setting | |
| and call _changeView. | |
| (WebInspector.JavaScriptProfileView.prototype._changeView): Check _showTreeBottomUpSetting. | |
| Removing reference to old viewSelectElement property. | |
| 2013-03-08 Timothy Hatcher <timothy@apple.com> | |
| Make the "H" key toggle the visibility of the selected DOM element. | |
| <rdar://problem/13352674> PARITY (WebKit Web Inspector): Shortcut to hide/show DOM elements while inspecting | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): Create the keyboard shortcut. | |
| (WebInspector.DOMTreeOutline.prototype._hideElement.toggleProperties): Added. | |
| (WebInspector.DOMTreeOutline.prototype._hideElement): Added. | |
| 2013-03-08 Timothy Hatcher <timothy@apple.com> | |
| Always fire the Refreshed event for DOMNodeStyles. | |
| Not firing Refreshed made it hard to listen for when it was safe to use the properties. | |
| If you call refresh, you expect Refreshed to always fire. But it would only fire if there | |
| was a significant change. Now it always fires and passes a flag whether it was significant. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.propertyForName): Drive by: don't consider | |
| pending properties if we can't create or are not editable. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): Keep track on if we | |
| found a significant change since the last time we fired the Refreshed event. Only recompute | |
| if it was significant if we aren't already marked as significant. Pass significantChange along | |
| with the Refreshed event and always fire it. | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Added significantChange param. Only | |
| do a rebuild if it was significant. | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh): Set _forceSignificantChange. | |
| (WebInspector.StyleDetailsPanel.prototype.refresh): Added significantChange param. | |
| (WebInspector.StyleDetailsPanel.prototype._refreshPreservingScrollPosition): Pass along | |
| significantChange to refresh, taking into consideration _forceSignificantChange. | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): Pass along significantChange | |
| from the event to _refreshPreservingScrollPosition. | |
| 2013-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13372615> REGRESSION: theverge.com shows 2 duplicate "rs.js" Extra Script resources | |
| The URLs passed in scriptParsed messages appears to not match up properly | |
| with the Resource URL. Testing on theverge.com we can get script URLs | |
| that are encoded where the resource URL is decoded, and we can get script | |
| URLs that have a hash where the resource URL does not have a hash. Provide | |
| a generic resourceForScript lookup. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceForScript): | |
| Walk the frame tree looking for a resource with the same URL as | |
| a script. Check the with fragment encoded and decoded script URL, | |
| an without fragment encoded and decoded script URL. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.scriptsForURL): | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._scriptAdded): | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): | |
| * UserInterface/SourceMapManager.js: | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSucceeded): | |
| When we have a script, use the resourceForScript instead of resourceForURL. | |
| * UserInterface/Utilities.js: | |
| (removeURLFragment): helper fro removing URL fragment. | |
| 2013-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13371011> Misclassified resources if you open the inspector while the page is loading | |
| When the Web Inspector is opened during a page load it gets a list of | |
| all resources from the backend via getResourceTree. We assume that the | |
| resources in that tree are completed loads. We may later discover that | |
| some of those resources are actively loading, and that other actively | |
| loading resources are not in that list. We can detect both of these | |
| cases by receiving a receiveResponse message. Handle it appropriately | |
| so that a WebInspector.Script can always find a WebInspector.Resource. | |
| Otherwise, the Script would show its own tree element under "Extra | |
| Scripts" in the sidebar. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): | |
| When we don't have an identifier but we find a Resource by URL, then we should | |
| update the Resource to still be loading. If we don't have a Resource at all we | |
| should create one, it is currently loading. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): | |
| We can assert again. We always expect to have a Resource by the time we get a | |
| didFinishLoading or didFailLoading message. If we don't then this could be | |
| an extreme edge case (like a dataReceived without a receivedResponse). | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.revertMarkAsFinished): | |
| Revert the finished and finished timestamp properties. When a | |
| finishLoading or didFailLoading message comes in the states will | |
| be updated again. | |
| 2013-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| ASSERT: FrameResourceManager.prototype.frameDidNavigate: console.assert(frame) | |
| Fix a typo. A WebInspector.Resource has a parentFrame, not a frame accessor. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): | |
| 2013-03-08 Timothy Hatcher <timothy@apple.com> | |
| Fix the font smoothing in the Web Inspector. | |
| This is needed after making the Web Inspector WKView use tiled drawing since our WKView is transparent. | |
| <rdar://problem/12922185> REGRESSION: Text in the Web Inspector is not sub-pixel anti-aliased anymore | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.css: | |
| (body): Add -webkit-font-smoothing: subpixel-antialiased to force sub-pixel in our transparent WebView. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .empty-content-placeholder > .message): Remove -webkit-font-smoothing: antialiased. | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Don't scroll the Style details sidebar if the pseudo class checkboxes are not present. | |
| This applies when inspecting an iOS 6 device or simulator. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.get _initialScrollOffset): Return 0 | |
| if we can't for pseudo classes. | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.get _initialScrollOffset): Ditto. | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Display applied media queries in the new Style details sidebar. | |
| <rdar://problem/13376129> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/RulesStyleDetailsPanel.css: | |
| (.sidebar > .panel.details.css-style .rules .label): Renamed from .inherited-label. | |
| (.sidebar > .panel.details.css-style .rules .label .go-to-link): Added. | |
| (.sidebar > .panel.details.css-style .rules .label + .style-declaration-section): Added. | |
| (.sidebar > .panel.details.css-style .rules .new-rule): Tweaked opacity to better match .label. | |
| (.sidebar > .panel.details.css-style .rules .new-rule:hover): Ditto. | |
| (.sidebar > .panel.details.css-style .rules .new-rule:active): Ditto. | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.mediaListsEqual): Added. | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.filteredMediaList): Added. | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Only include the media list if it is | |
| different from the previous media list shown. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.isEqual): Added. | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Fix a typo in the Dashboard tooltips. | |
| <rdar://problem/13365669> [WebInspector] typo in source - "click to show to the" should be "click to show the" | |
| Reviewed by Ricky Mondello. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DashboardView.js: | |
| (WebInspector.DashboardView): Removed "to" from two tooltips. | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Fix the word wrapping for long origins that are links. | |
| Also fixes the location and wrapping of the read-only lock icon. | |
| <rdar://problem/13365935> Long CSS resource names causes poor line wrapping in Style sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| (.style-declaration-section.locked > .header::before): Changed from after so the lock sticks | |
| to the top of the section as intended instead of on the last line. Add a left margin to prevent | |
| the origin from touching the icon. | |
| (.style-declaration-section > .header > .origin): Remove display: inline-block and vertical-align. | |
| Added word-wrap: break-word and white-space: nowrap to prevent breaking the built-in origins among | |
| multiple lines. | |
| (.style-declaration-section > .header > .origin a): Added. Set white-space to normal to allow it | |
| to break along multiple lines. | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Indent wrapped lines by 2 extra spaces to better break up long lines in the details sidebar. | |
| An earlier change made it work for editable styles, this makes it work for read-only styles. | |
| <rdar://problem/13310983> Long styles that wrap are hard to read in new Style details sidebar. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor.read-only > .CodeMirror pre): | |
| 2013-03-07 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Add Array.lastValue and start using it. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._scanStringForExpression): | |
| * UserInterface/CodeMirrorFormatters.js: | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.get lastChild): | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._updateChildren): | |
| (WebInspector.DOMTreeElement.prototype.moveToNextAttributeIfNeeded): | |
| (WebInspector.DOMTreeElement.prototype._attributeEditingCommitted): | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype.sortNodes): | |
| (WebInspector.DataGridNode.prototype.traversePreviousNode): | |
| * UserInterface/FormatterContentBuilder.js: | |
| (FormatterContentBuilder.prototype.removeLastNewline): | |
| (FormatterContentBuilder.prototype._addFormattedLineEnding): | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.get lastComponent): | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype._sendMessageToBackend): | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.prototype._completionsReady): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview.prototype.update): | |
| * UserInterface/Utilities.js: | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Use Array.contains instead of indexOf. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Branch.js: | |
| (WebInspector.Branch.prototype.addRevision): | |
| * UserInterface/CSSRule.js: | |
| * UserInterface/CSSStyleDeclaration.js: | |
| * UserInterface/CSSStyleDeclarationSection.js: | |
| (WebInspector.CSSStyleDeclarationSection.prototype.refresh): | |
| * UserInterface/CodeMirrorCompletionController.js: | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem): | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.showContentView): | |
| * UserInterface/DOMNode.js: | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): | |
| * UserInterface/DOMTreeElement.js: | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.addClassName): | |
| (WebInspector.GeneralTreeElement.prototype.removeClassName): | |
| * UserInterface/LayerTreeManager.js: | |
| (WebInspector.LayerTreeManager.prototype.var): | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype._findNavigationItem): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.findSidebarPanel): | |
| 2013-03-07 Timothy Hatcher <timothy@apple.com> | |
| Don't ignore user agent rules when forced pseudo classes change. | |
| Normally the Refreshed event is not fired only when user agent rules change, due to a bug | |
| in WebCore. However, we need to fire it when the forced pseudo classes change since there | |
| are base rules for most of the pseudo classes that need to show up in the sidebar. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): Don't check for | |
| user agent rules if _includeUserAgentRulesOnNextRefresh is true. | |
| (WebInspector.DOMNodeStyles.prototype._markAsNeedsRefresh): Added includeUserAgentRules. | |
| Set _includeUserAgentRulesOnNextRefresh if includeUserAgentRules is true. | |
| (WebInspector.DOMNodeStyles.prototype._pseudoClassesDidChange): Pass true to _markAsNeedsRefresh. | |
| 2013-03-06 Timothy Hatcher <timothy@apple.com> | |
| Add checkboxes that allow forcing pseudo classes in the Style details sidebar. | |
| The checkboxes are scrolled off the top if there are no forced pseudo classes. | |
| When there are forced classes the checkboxes are initially visible. Also we can | |
| only scroll them away when there is enough content to scroll. | |
| <rdar://problem/13143555> Add the ability to toggle forced CSS pseudo-classes from style sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style > .content > .pseudo-classes): | |
| (.sidebar > .panel.details.css-style > .content > .pseudo-classes > label): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.addEventListeners): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.removeEventListeners): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.get _initialScrollOffset): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._navigationItemSelected): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._forcedPseudoClassCheckboxChanged): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._updatePseudoClassCheckboxes): | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.canForcePseudoClasses): | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._populateTagContextMenu): | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.get _initialScrollOffset): | |
| (WebInspector.StyleDetailsPanel.prototype._refreshPreservingScrollPosition): | |
| * UserInterface/Utilities.js: | |
| (Array.prototype.contains): Added. | |
| 2013-03-06 Timothy Hatcher <timothy@apple.com> | |
| Remove more dead code from CSSStyleManager that I missed. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.parseRuleArrayPayload): Removed. | |
| 2013-03-06 Timothy Hatcher <timothy@apple.com> | |
| Add missing image Images/Locked.pdf. | |
| <rdar://problem/13355862> | |
| * UserInterface/Images/Locked.pdf: Added. | |
| 2013-03-05 Timothy Hatcher <timothy@apple.com> | |
| Add support for adding new rules in the Style details sidebar. | |
| <rdar://problem/11326086> REGRESSION (Safari 6): Can't add new selectors / rules | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDeclarationSection.css: | |
| (div:not(.style-declaration-section) + .style-declaration-section): Added. Generic | |
| rule to add a shadow on the top when something is between sections. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.addRule): Added. | |
| (WebInspector.DOMNodeStyles.prototype._collectStylesInCascadeOrder): Include Inspector | |
| styles. Also collect user and user agent styles into one array. | |
| * UserInterface/Images/Plus.pdf: Added. | |
| * UserInterface/RulesStyleDetailsPanel.css: | |
| (.sidebar > .panel.details.css-style .rules .new-rule): Added. | |
| (.sidebar > .panel.details.css-style .rules .new-rule img): Added. | |
| (.sidebar > .panel.details.css-style .rules .new-rule:hover): Added. | |
| (.sidebar > .panel.details.css-style .rules .new-rule:active): Added. | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection): Focus the new | |
| inspector rule when it is added. | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): Create a New Rule button. | |
| (WebInspector.RulesStyleDetailsPanel.prototype._newRuleClicked): Added. | |
| 2013-03-05 Timothy Hatcher <timothy@apple.com> | |
| Remove dead code from CSSStyleManager. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| Remove old code and the copyright that went with the code. None of the remaining | |
| code came from the original open source file. | |
| 2013-03-04 Timothy Hatcher <timothy@apple.com> | |
| Always insert a space after ":" when pretty printing in the Style details sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.get synthesizedText): Added. | |
| (WebInspector.CSSProperty.prototype.get text): Factored into synthesizedText. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Use synthesizedText. | |
| Using CSSProperty.text still uses the original text which might not have a space after ":". | |
| 2013-03-04 Timothy Hatcher <timothy@apple.com> | |
| Skip invalid properties when marking overridden properties. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): Check for not valid and continue early. | |
| 2013-03-04 Timothy Hatcher <timothy@apple.com> | |
| Flag properties that have other vendor keywords in the value so they are not crossed out in red. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.hasOtherVendorNameOrKeyword): Check propertyValueHasOtherVendorKeyword too. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.propertyValueHasOtherVendorKeyword): Added. | |
| 2013-03-04 Timothy Hatcher <timothy@apple.com> | |
| Indent wrapped lines by 2 extra spaces to better break up long lines in the details sidebar. | |
| <rdar://problem/13310983> Long styles that wrap are hard to read in new Style details sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror pre): Tweak the padding and text-indent. | |
| 2013-03-04 Timothy Hatcher <timothy@apple.com> | |
| Add CodeMirrorCompletionController and start using it in CSSStyleDeclarationTextEditor. | |
| This restores auto complete to the Style details sidebar and also paves the way for using | |
| CodeMirror for the console prompt. | |
| <rdar://problem/13304962> REGRESSION: Style property autocomplete missing from the Style details sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .completion-pending .css-style-declaration-property.invalid): | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.completionControllerCompletionsHidden): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype): | |
| * UserInterface/CodeMirrorCompletionController.css: Added. | |
| (.CodeMirror .CodeMirror-lines .completion-hint): | |
| * UserInterface/CodeMirrorCompletionController.js: Added. | |
| (WebInspector.CodeMirrorCompletionController): | |
| (WebInspector.CodeMirrorCompletionController.prototype.get delegate): | |
| (WebInspector.CodeMirrorCompletionController.prototype.updateCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype.isCompletionChange): | |
| (WebInspector.CodeMirrorCompletionController.prototype.isShowingCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype.hideCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype.close): | |
| (WebInspector.CodeMirrorCompletionController.prototype.completionSuggestionsSelectedCompletion): | |
| (WebInspector.CodeMirrorCompletionController.prototype.completionSuggestionsClickedCompletion): | |
| (WebInspector.CodeMirrorCompletionController.prototype._hasPendingCompletion): | |
| (WebInspector.CodeMirrorCompletionController.prototype._notifyCompletionsHiddenSoon): | |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update): | |
| (WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint): | |
| (WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint): | |
| (WebInspector.CodeMirrorCompletionController.prototype.update): | |
| (WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint): | |
| (WebInspector.CodeMirrorCompletionController.prototype._removePendingCompletionLineStyleClass.removePendingStyleClass): | |
| (WebInspector.CodeMirrorCompletionController.prototype._removePendingCompletionLineStyleClass): | |
| (WebInspector.CodeMirrorCompletionController.prototype.isStopCharacter): | |
| (WebInspector.CodeMirrorCompletionController.prototype.isOpenBracketCharacter): | |
| (WebInspector.CodeMirrorCompletionController.prototype.isCloseBracketCharacter): | |
| (WebInspector.CodeMirrorCompletionController.prototype.matchingBracketCharacter): | |
| (WebInspector.CodeMirrorCompletionController.prototype._scanStringForExpression): | |
| (WebInspector.CodeMirrorCompletionController.prototype._completeAtCurrentPosition): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateCSSCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleUpKey): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleDownKey): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleRightOrEnterKey): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleEscapeKey): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleTabKey): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleChange): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleCursorActivity): | |
| (WebInspector.CodeMirrorCompletionController.prototype._handleHideAction): | |
| * UserInterface/CompletionSuggestionsView.css: Added. | |
| (.completion-suggestions): | |
| (.completion-suggestions > .completion-suggestions-container): | |
| (.completion-suggestions-container > .item): | |
| (.completion-suggestions-container > .item:hover): | |
| * UserInterface/CompletionSuggestionsView.js: Added. | |
| (WebInspector.CompletionSuggestionsView): | |
| (WebInspector.CompletionSuggestionsView.prototype.get delegate): | |
| (WebInspector.CompletionSuggestionsView.prototype.get visible): | |
| (WebInspector.CompletionSuggestionsView.prototype.get selectedIndex): | |
| (WebInspector.CompletionSuggestionsView.prototype.set selectedIndex): | |
| (WebInspector.CompletionSuggestionsView.prototype.selectNext): | |
| (WebInspector.CompletionSuggestionsView.prototype.selectPrevious): | |
| (WebInspector.CompletionSuggestionsView.prototype.isHandlingClickEvent): | |
| (WebInspector.CompletionSuggestionsView.prototype.show): | |
| (WebInspector.CompletionSuggestionsView.prototype.hide): | |
| (WebInspector.CompletionSuggestionsView.prototype.update): | |
| (WebInspector.CompletionSuggestionsView.prototype.get _selectedItemElement): | |
| (WebInspector.CompletionSuggestionsView.prototype._mouseDown): | |
| (WebInspector.CompletionSuggestionsView.prototype._mouseUp): | |
| (WebInspector.CompletionSuggestionsView.prototype._itemClicked): | |
| * UserInterface/Main.html: | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Disable some features while column debugging is broken | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| To prevent broken behavior and a poor experience with breakpoints and | |
| debugging but still allow for pretty-printing disable some features | |
| related to columns. We can revert this change later and test more when | |
| the underlying issue is fixed. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| Instead of jumping to the display location, jump to the original location. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| Don't autoformat if we're being debugged. | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| If we are going to be debugged unformat. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): | |
| Disallow setting breakpoints in formatted content. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Update CodeMirror to ToT (v3.1+) which includes some important performance fixes | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/External/CodeMirror/codemirror.js: | |
| * UserInterface/External/CodeMirror/javascript.js: | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Set the FormatterSourceMap on both Resource and Script like SourceMaps | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Most source code text editors are for Resources, like external scripts. | |
| However the backend identifies call frames with Script line and column | |
| information. So the Script needs to know about the Resource's formatter. | |
| We register for events in case the execution line changes on the fly. | |
| This could happen if a breakpoint is hit on page load of a script that | |
| is auto formatted. When the page loads, the breakpoint is hit and the | |
| call frame is created with the original location and no formatter. When | |
| the script Resource is shown it gets formatted, the associated Script | |
| gets the formatter and the active call frame location updates its | |
| display location. In that case the text editor for the Resource may | |
| need to update its display of the execution line number. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.close): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameSourceCodeLocationChanged): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Update Display Strings in Breakpoint and CallFrame TreeElements | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| If a breakpoint is on a column, show line:column. If the breakpoint is | |
| in a formatted view, set the subtitle to the original location. If a | |
| call frame is in a formatted source, include the original location in | |
| the tooltip. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.originalLocationString): | |
| (WebInspector.SourceCodeLocation.prototype.displayLocationString): | |
| (WebInspector.SourceCodeLocation.prototype._locationString): | |
| Provide generic file:line:column string support. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement.prototype._updateTitles): | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| Update strings where appropriate. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Automatically pretty print files that look like they are minified. | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Update breakpoint handling for formatted content | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| TextEditor and SourceCodeTextEditor both have a map that stores breakpoint | |
| information for editor lineNumber and columnNumber. For editors it makes | |
| the most sense to keep these maps consistent with the formatted state of | |
| the editor. | |
| Terminology with this in mind "editor line info" is always the line and | |
| column information for the current state of the editor. If the editor | |
| is formatted, this is a formatted line and column of the sourceCode. | |
| if the editor is not formatted this is the original line and column of | |
| the sourceCode. | |
| A tricky part here is that with a FormatterSourceMap is that it may map | |
| a simple line:0 to a more accurate line:#. For example setting the | |
| breakpoint on a pretty printed source code with leading whitespace, the | |
| accurate location will not be column 0 but instead be the column # of | |
| the first character on that line. When this happens we need to make sure | |
| that both the SourceCodeTextEditor and TextEditor have stored the more | |
| accurate location in their maps. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._unformattedLineInfoForEditorLineInfo): | |
| Given an editor line info, this gives us the original line info depending on | |
| if the text editor is formatted or not. | |
| (WebInspector.SourceCodeTextEditor.prototype._editorLineInfoForSourceCodeLocation): | |
| Given a SourceCodeLocation this gives us a line info for the text editor depending | |
| on if the text editor is formatted or not. SourceCodeLocation already handles this. | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointLocation): | |
| When a breakpoint moves, we'll need to update our tables removing the old | |
| location and setting the new location. SourceCodeLocation gives us the old | |
| and new formatted location which handles if the text editor is formatted or not. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): | |
| If the text editor is formatted, be sure to remove a breakpoint with the | |
| unformatted, original location because we're dealing with the backend. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): | |
| When the TextEditor sends a delegate up to the SourceCodeTextEditor about | |
| a breakpoint being added, it waits for a response to put into its table. | |
| Use this as an opportunity to provide the accurate resolved location. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointMoved): | |
| When the TextEditor sends a delegate up to the SourceCodeTextEditor about | |
| a breakpoint being moved, it has already put an entry into its table at | |
| line + column 0. We update that entry via updateBreakpointLineAndColumn. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorFormattingDidChange): | |
| After pretty printing the editor's value was completely changed. Some | |
| breakpoints may have moved, some might not have. Ignore the DisplayLocation | |
| change events when setting the formatter on the SourceCode and update all | |
| the breakpoint map locations for ourself and the underlying TextEditor. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.updateBreakpointLineAndColumn): | |
| (WebInspector.TextEditor.prototype._gutterMouseDown): | |
| Update or set breakpoint info entires with accurante line and column info. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Pretty print and incorporate the formatted location into the SourceCodeLocation display location | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| When a SourceCodeTextEditor formats a SourceCode it produces a | |
| FormatterSourceMap and sets it on the SourceCode. All SourceCodeLocations | |
| associated with that SourceCode can update their display location. | |
| If a location is already listening for DisplayLocation change events | |
| it will just work (BreakPointTreeElements, CallFrameTreeElements). | |
| SourceCodeLocation now has 3 sets of values and a display value: | |
| - [public] sourceCode, lineNumber, columnNumber | |
| - raw original sourceCode and values | |
| - useful for interaction with the backend | |
| - [public] formattedLineNumber, formattedColumnNumber | |
| - for the original sourceCode | |
| - if the sourceCode has a formatter, these are the formatted values | |
| - if the sourceCode doesn't have a formatter, these are the same as the raw values | |
| - useful for TextEditors that are showing content + gutters for formatted source | |
| - [private] mappedResource, mappedLineNumber, mappedColumnNumber | |
| - if the sourceCode has a sourceMap, this is the mapped location of the raw | |
| values into a SourceMapResource line and column | |
| - if the sourceCode doesn't have a sourceMap these are null, NaN, NaN | |
| - useful for a display location, since it is the author's original pre-generated source | |
| - [public] displayResource, displayLineNumber, displayColumnNumber | |
| - if there is a mapped location use that | |
| - if there is a formatted location use that | |
| - otherwise use the raw original location | |
| - useful for anyone who wants to display a location | |
| Most users of SourceCodeLocation should only care about the display | |
| values and should register for DisplayLocation change events to know | |
| when to update. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get formatterSourceMap): | |
| (WebInspector.TextEditor.prototype._prettyPrint): | |
| Run the formatter. Update selection. Update search. Notify delegate. | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView): | |
| (WebInspector.ScriptContentView.prototype._textEditorFormattingDidChange): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): | |
| (WebInspector.TextResourceContentView.prototype._textEditorFormattingDidChange): | |
| Update the pretty print button's activated state when formatting changes to match the TextEditor. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorUpdatedFormatting): | |
| The TextEditor changed formatting and updated its FormatterSourceMap. Set | |
| the FormatterSourceMap on the SourceCode itself. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode): | |
| (WebInspector.SourceCode.prototype.get formatterSourceMap): | |
| (WebInspector.SourceCode.prototype.set formatterSourceMap): | |
| A SourceCode may have a formatter source map when the TextEditor for it | |
| was pretty printed. Store that on the SourceCode so SourceCodeLocation | |
| objects know where to find it, and send an event when it changes. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation.prototype.get formattedLineNumber): | |
| (WebInspector.SourceCodeLocation.prototype.get formattedColumnNumber): | |
| (WebInspector.SourceCodeLocation.prototype._resolveFormattedLocation): | |
| Formatted location when the SourceCode is pretty printed. Original otherwise. | |
| (WebInspector.SourceCodeLocation.prototype.get displayLineNumber): | |
| (WebInspector.SourceCodeLocation.prototype.get displayColumnNumber): | |
| Mapped location, fallback to formatted, fallback to raw original. | |
| (WebInspector.SourceCodeLocation.prototype.hasFormattedLocation): | |
| (WebInspector.SourceCodeLocation.prototype.hasDifferentDisplayLocation): | |
| Helpful accessors for those that might be interested. | |
| (WebInspector.SourceCodeLocation.prototype._sourceCodeFormatterDidChange): | |
| When the SourceCode's formatter source map changed resolve our re-resolve | |
| our locations and fire an event if needed. | |
| (WebInspector.SourceCodeLocation.prototype._makeChangeAndDispatchChangeEventIfNeeded): | |
| Make the code simpler and handle formatted location changes. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Add a pretty print button to text content views | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.get navigationItems): | |
| Be sure to update navigation items when a FrameContentView changes | |
| content views (Source Code and DOM Tree), because the different views | |
| might have different navigation items. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.get navigationItems): | |
| (WebInspector.ScriptContentView.prototype._contentDidPopulate): | |
| (WebInspector.ScriptContentView.prototype._togglePrettyPrint): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get navigationItems): | |
| (WebInspector.TextResourceContentView.prototype._contentDidPopulate): | |
| (WebInspector.TextResourceContentView.prototype._togglePrettyPrint): | |
| Add a pretty print button to Script and TextResource content views. | |
| Disabled initially, and enabled when content populates and the | |
| TextEditor supports formatting | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.set readOnly): | |
| (WebInspector.TextEditor.prototype.get formatted): | |
| (WebInspector.TextEditor.prototype.set formatted): | |
| (WebInspector.TextEditor.prototype._updateCodeMirrorReadOnly): | |
| Currently, mark the editor as readyOnly immediately when it is formatted. | |
| This may change in the future. | |
| (WebInspector.TextEditor.prototype.hasFormatter): | |
| (WebInspector.TextEditor.prototype.canBeFormatted): | |
| Accessor for whether the TextEditor can be formatted. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.canBeFormatted): | |
| Don't allow SourceMapResources to be formatted. This is to simplify | |
| later changes a bit. We can do this later in the future if we want. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): | |
| Fire an event when content populates. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| FormatterSourceMap to convert between original and formatted locations | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Add FormatterSourceMap class. This is nearly identical to OpenSource's | |
| FormatterSourceMapping, which does the same thing. This provides | |
| conversions in either direction between an original and formatted line | |
| and column number. It requires the original and formatted line endings | |
| and a mapping, all data the the ContentBuilder has. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FormatterSourceMap.js: Added. | |
| (WebInspector.FormatterSourceMap): | |
| (WebInspector.FormatterSourceMap.fromBuilder): | |
| (WebInspector.FormatterSourceMap.prototype.originalToFormatted): | |
| (WebInspector.FormatterSourceMap.prototype.formattedToOriginal): | |
| (WebInspector.FormatterSourceMap.prototype._locationToPosition): | |
| (WebInspector.FormatterSourceMap.prototype._positionToLocation): | |
| (WebInspector.FormatterSourceMap.prototype._convertPosition): | |
| * UserInterface/Main.html: | |
| * UserInterface/Utilities.js: | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| CSS Pretty Printer | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CodeMirrorFormatters.js: | |
| (CodeMirror["css mode"].shouldHaveSpaceBeforeToken): | |
| (CodeMirror["css mode"].shouldHaveSpaceAfterLastToken): | |
| (CodeMirror["css mode"].newlinesAfterToken): | |
| (CodeMirror["css mode"].removeLastNewline): | |
| (CodeMirror["css mode"].indentAfterToken): | |
| (CodeMirror["css mode"].newlineBeforeToken): | |
| (CodeMirror["css mode"].dedentBeforeToken): | |
| (CodeMirror["css mode"].modifyStateForToken): | |
| The general goals are: | |
| - spaces after ',' in selector lists | |
| - spaces after ':' between properties and values | |
| - newlines after '{', '}', and ';', with 2 newlines between blocks | |
| - newlines after ',' in long selector lists "a,b,..,z {}" | |
| - indent after '{' and dedent before '}' | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Formatter, ContentBuilder, and JavaScript Pretty Printer | |
| <rdar://problem/11219771> REGRESSION (Safari 6): Can't pretty-print JavaScript | |
| This patch adds a Formatter driver class, a ContentBuilder class that | |
| builds both the formatted string and line ending markers needed for a | |
| source mapping, and JavaScript CodeMirror extensions for pretty printing. | |
| The Formatter and FormatterContentBuilder classes are not WebInspector | |
| prefixed. Their only dependency is CodeMirror and the CodeMirror modes. | |
| They are standalone, and could be moved to a Worker if needed. | |
| The Formatter class takes a tokenizer (in our case a CodeMirror object) | |
| and a builder object. Call format() on a range to tokenize over that | |
| range and populate the builder for that range. The Formatter assumes | |
| the CodeMirror object has the appropriate pretty printing extensions. | |
| The ContentBuilder class manages line endings the resulting string, and | |
| all things whitespace related in the output string (such as collapsing | |
| whitespace, and indentation). | |
| The CodeMirror pretty printing extensions are very primitive. For each | |
| token CodeMirror outputs the mode for that token is asked if we should | |
| add a space before or after, add newlines before or after, indent or | |
| dedent, retroactively remove the last newline, or updating private state. | |
| Most of the time whitespace is already required languages, so whitespace | |
| only really needs to be added where it is optional and would be prettier. | |
| One simple example is "}else{" versus "} else {". The mode doesn't need | |
| to worry about collapsing whitespace. It just suggests where whitespace | |
| goes and the Formatter + ContentBuilder takes care of the rest. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Formatter.js: Added. | |
| (Formatter): | |
| (Formatter.prototype.format): | |
| A StringStream is considered to be one line. So split the content over | |
| the given range into lines, and tokenize over the lines. There are hooks | |
| for handling tokens, empty lines, and line endings. | |
| (Formatter.prototype._handleToken): | |
| Ask the mode how to pretty print the current token. | |
| (Formatter.prototype._handleEmptyLine): | |
| Preserve newlines in multi-line comments. If this is an empty line in | |
| a comment, force the builder to add a new line. | |
| (Formatter.prototype._handleLineEnding): | |
| Notify the builder that of an original line ending. | |
| * UserInterface/FormatterContentBuilder.js: Added. | |
| (FormatterContentBuilder): | |
| (FormatterContentBuilder.prototype.get originalContent): | |
| (FormatterContentBuilder.prototype.get formattedContent): | |
| (FormatterContentBuilder.prototype.get mapping): | |
| (FormatterContentBuilder.prototype.get originalLineEndings): | |
| (FormatterContentBuilder.prototype.get formattedLineEndings): | |
| (FormatterContentBuilder.prototype.setOriginalContent): | |
| Results of a formatting run. Everything needed for a SourceMap. | |
| (FormatterContentBuilder.prototype.appendToken): | |
| (FormatterContentBuilder.prototype.appendSpace): | |
| (FormatterContentBuilder.prototype.appendNewline): | |
| (FormatterContentBuilder.prototype.removeLastNewline): | |
| (FormatterContentBuilder.prototype.indent): | |
| (FormatterContentBuilder.prototype.dedent): | |
| (FormatterContentBuilder.prototype.addOriginalLineEnding): | |
| (FormatterContentBuilder.prototype.finish): | |
| Public interface is simple. | |
| (FormatterContentBuilder.prototype._popNewLine): | |
| (FormatterContentBuilder.prototype._append): | |
| Handle growing / shrinking the content + content length at the same time. | |
| (FormatterContentBuilder.prototype._appendIndent): | |
| Indentation is stored in a cache to avoid recomputing often. However, | |
| the cache stops at 20, if there is an indentation greater than 20 we | |
| compose it in chunks. | |
| (FormatterContentBuilder.prototype._addMappingIfNeeded): | |
| Add a mapping for each token originalPosition and formattedPosition. | |
| (FormatterContentBuilder.prototype._addFormattedLineEnding): | |
| Keep track of formatted content line endings. | |
| * UserInterface/CodeMirrorFormatters.js: Added. | |
| (CodeMirror["javascript mode"].shouldHaveSpaceBeforeToken): | |
| (CodeMirror["javascript mode"].shouldHaveSpaceAfterLastToken): | |
| (CodeMirror["javascript mode"].newlinesAfterToken): | |
| (CodeMirror["javascript mode"].removeLastNewline): | |
| (CodeMirror["javascript mode"].indentAfterToken): | |
| (CodeMirror["javascript mode"].newlineBeforeToken): | |
| (CodeMirror["javascript mode"].dedentBeforeToken): | |
| The general goal with these hooks are: | |
| - spaces before and after most operators (not unary) | |
| - spaces around keywords | |
| - newlines after '{', '}', and ';' | |
| - newlines after ',' when inside an object context | |
| - indent after '{' and dedent before '}' | |
| * UserInterface/Main.html: | |
| Add new files. | |
| 2013-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13331470> REGRESSION: Inspector debugger continue button is a pause icon when it should be an arrow | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.set image): | |
| This was appending a new child image element each time instead of | |
| replacing the existing image. Remove the old children on changes. | |
| 2013-03-04 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13331811> Web Inspector: remove existing LayerTreeAgent protocol APIs (111251) | |
| Deactivate the layer tree sidebar panel until the new API | |
| lands in WebCore and we can update the Internal code to use | |
| this API. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeManager.js: | |
| (WebInspector.LayerTreeManager): | |
| * UserInterface/LayerTreeObserver.js: | |
| (WebInspector.LayerTreeObserver.prototype.layerTreeDidChange): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype.supportsDOMNode): | |
| 2013-03-01 Timothy Hatcher <timothy@apple.com> | |
| Update the Style details sidebar when when pseudo classes are forced or media queries change. | |
| <rdar://problem/13328298> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.mediaQueryResultChanged): Call mediaQueryResultDidChange on each DOMNodeStyles. | |
| Removed the event since it wasn't used anymore. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.setPseudoClassEnabled): Fire the event after the agent actually does the change. | |
| (WebInspector.DOMNode.prototype.setPseudoClassEnabled.changed): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Added listener for EnabledPseudoClassesChanged. | |
| (WebInspector.DOMNodeStyles.prototype.mediaQueryResultDidChange): Added. Call _markAsNeedsRefresh. | |
| (WebInspector.DOMNodeStyles.prototype._markAsNeedsRefresh): Added. | |
| (WebInspector.DOMNodeStyles.prototype._pseudoClassesDidChange): Added. Call _markAsNeedsRefresh. | |
| (WebInspector.DOMNodeStyles.prototype._attributesDidChange): Use _markAsNeedsRefresh. | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange.checkRules): Ditto. | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): Ditto. | |
| 2013-03-01 Timothy Hatcher <timothy@apple.com> | |
| Changes are committed to frequently since updating to CodeMirror 3.1. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): The origin for user input | |
| changed from "input" to "+input". And there is now "+delete". Internally CodeMirror just looks for | |
| the "+" prefix to decide if the change should coalesce in undo history. We should do the same. | |
| 2013-03-01 Timothy Hatcher <timothy@apple.com> | |
| Fix style editing after an Inspector protocol change for how SourceRange is sent. | |
| <rdar://problem/13324015> Style editing in the new Style details sidebar is broken after r144434 | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty): Removed startStyleSheetTextPosition and endStyleSheetTextPosition. | |
| Added styleSheetTextRange and styleDeclarationTextRange. | |
| (WebInspector.CSSProperty.prototype.update): Ditto. Delete _styleDeclarationTextRange if it isn't | |
| given so it can be recomputed. | |
| (WebInspector.CSSProperty.prototype.get styleSheetTextRange): Added. | |
| (WebInspector.CSSProperty.prototype.get styleDeclarationTextRange): Added. Compute if missing. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration): Removed startStyleSheetTextPosition and endStyleSheetTextPosition. | |
| Added styleSheetTextRange. | |
| (WebInspector.CSSStyleDeclaration.prototype.update): Ditto. | |
| (WebInspector.CSSStyleDeclaration.prototype.get visibleProperties): Look for styleDeclarationTextRange. | |
| (WebInspector.CSSStyleDeclaration.prototype.get styleSheetTextRange): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Don't add | |
| checkboxes for properties if the editor is read-only. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Use styleDeclarationTextRange. | |
| Don't add checkboxes for comments if the editor is read-only. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Use styleSheetTextRange. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText): Use styleSheetTextRange. | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText.fetchedStyleSheetContent): Use styleSheetTextRange. | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Update comment. | |
| (WebInspector.DOMNodeStyles.prototype._parseSourceRangePayload): Added. Helper. | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Use _parseSourceRangePayload. | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): Ditto. | |
| * UserInterface/TextRange.js: | |
| (WebInspector.TextRange): Allow 4 or 2 argument construction. One for lines and columns, the other for offsets. | |
| (WebInspector.TextRange.prototype.get startLine): Added. | |
| (WebInspector.TextRange.prototype.get startColumn): Added. | |
| (WebInspector.TextRange.prototype.get endLine): Added. | |
| (WebInspector.TextRange.prototype.get endColumn): Added. | |
| (WebInspector.TextRange.prototype.get startOffset): Added. | |
| (WebInspector.TextRange.prototype.get endOffset): Added. | |
| (WebInspector.TextRange.prototype.resolveLinesAndColumns): Added. | |
| (WebInspector.TextRange.prototype.resolveLinesAndColumns.countNewLineCharacters): Added. | |
| (WebInspector.TextRange.prototype.resolveOffsets): Added. | |
| 2013-02-28 Timothy Hatcher <timothy@apple.com> | |
| Switch from post-processing for the style pretty printer to fully synthesized content. | |
| Inserting a newline between the semicolon and the next property was causing the newline | |
| to be inserted between the next property and its checkbox. This is controllable via the | |
| insertLeft option on bookmarks in CodeMirror; however, that causes typed text to go on | |
| the left of the checkbox. | |
| Switching to the synthesized code path is cleaner and simpler. | |
| <rdar://problem/13314682> Styles on Twitter.com have checkboxes at the end of the property | |
| instead of beginning | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Renamed lineCount() | |
| to countNewLineCharacters() since it conflicts with the lineCount variable. | |
| 2013-02-28 Timothy Hatcher <timothy@apple.com> | |
| Don't disable property checkboxes after click to prevent a subtle flash. | |
| <rdar://problem/13306506> CSS rule box flashes checkboxes and crossed-out text during editing | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Don't set disabled. | |
| Remove assert for range since it might have been removed already. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Ditto. | |
| 2013-02-28 Timothy Hatcher <timothy@apple.com> | |
| Use CodeMirror 3.1's new getAllMarks() instead of tracking them ourselves. | |
| Also fix an assert that would fire if we reused a text marker that was removed. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor): Remove _textMarkers. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Stop using _textMarkers. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): Ditto. | |
| Also only reuse a marker if it is still in the document. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches): Stop using _textMarkers. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Ditto. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Remove a flash of the color swatch when toggling a property. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches): Add lineNumber | |
| parameter to update only that line. Also skip colors that are already marked. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Call _createColorSwatches. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Ditto. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._colorSwatchClicked): Set __markedColor | |
| to true so we know it is a color. Remove an unused class name. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Pretty print the style text if there are more properties than there are lines. | |
| There are a few style rules on apple.com that are multiple lines with 5-10 | |
| properties per line. These were avoiding the pretty printing because the line | |
| count was greater than one. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.update): Clear _visibleProperties. | |
| (WebInspector.CSSStyleDeclaration.prototype.get visibleProperties): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties): Add an | |
| option to only iterate over the visible properties. Also pass along if this is the last | |
| property to the callback. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Pass true to | |
| _iterateOverProperties. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Pretty print if the | |
| visible property count is greater than the line count. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Fix the text selection color in the style | |
| This is fallout from upgrading to CodeMirror 3.1. | |
| <rdar://problem/13307885> REGRESSION: Selection color in CodeMirror editors is always showing as gray unfocused | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror.CodeMirror-focused .CodeMirror-selected): Fixed the selector | |
| to look for CodeMirror-focused on the .CodeMirror element. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror.CodeMirror-focused .CodeMirror-selected): Ditto. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Don't do a full refresh of the Style details sidebar unless the included style declarations | |
| actually did change. | |
| Firing the DOMNodeStyles refreshed event cause the DOM to be rebuilt and that interrupts typing | |
| and causes the checkboxes to flash. | |
| <rdar://problem/13306506> CSS rule box flashes checkboxes and crossed-out text during editing | |
| <rdar://problem/13306813> Typing very fast drops characters when editing in the Style details sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): Removed dontFireRefreshedEvent parameter. We now | |
| smartly detect if the event needs to fire. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): Remove dontFireRefreshedEvent. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): Iterate over the styles and | |
| check if any were added or removed from the last refresh. | |
| (WebInspector.DOMNodeStyles.prototype.attributeChanged): Stop passing true to refresh(). | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Ditto. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| WebInspector.CSSProperty.Event.OverriddenStatusChanged is firing too much. | |
| In the workaround that landed in r48890, we delayed the fetch for inline and computed styles. | |
| This caused the OverriddenStatusChanged event to fire because the coalesce delay timed out | |
| while waiting for the inline style to come over the wire. | |
| Now we fetch them immediately again and if matched styles fails we make the inline and computed | |
| style callbacks bail before parsing their results. Failing is an edge case that might be fixed | |
| on the backend soon, so throwing the results away isn't that expensive. This also improves | |
| refresh performance in the common case. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): Initialize matchedStylesFailed to false. | |
| (WebInspector.DOMNodeStyles.prototype.fetchedMatchedStyles): Set matchedStylesFailed. | |
| (WebInspector.DOMNodeStyles.prototype.fetchedInlineStyles): Return early if matchedStylesFailed. | |
| (WebInspector.DOMNodeStyles.prototype.fetchedComputedStyle): Ditto. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Properties are not updated when overridden status changes. | |
| This is fallout from upgrading to CodeMirror 3.1. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): | |
| The cm property moved to the new doc property of TextMarker. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Pretty print the style text if there are multiple properties on only one line. | |
| This helps cases like apple.com and nytimes.com where minified or single line | |
| rules are the norm. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Loop over | |
| the properties that have markers and add newlines after them. | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Make color swatches show up for user agent styles, and other styles that don't have text. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): Return early if the style isn't | |
| editable. This still can be called when readOnly is set because clicking on a color swatch modifies the text. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Broke color matching out into | |
| _createColorSwatches. Added nonatomic support to avoid nesting operations. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Call _createColorSwatches in synthesized | |
| case when there isn't style text. | |
| 2013-02-27 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13218172> Make hover state for dashboard icons more pronounced | |
| Add a thin border around dashboard items on hover and make it slightly | |
| more pronounced when the item is also being clicked. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DashboardView.css: | |
| (.dashboard > .item): | |
| (.dashboard > .item.enabled:hover): | |
| (.dashboard > .item.enabled:active): | |
| (.toolbar.normal-size.icon-and-label-horizontal > .item-section > .dashboard > .item): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .item): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .resources): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .time): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .logs): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .memory): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .errors): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .issues): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .item): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .resources): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .time): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .logs): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .memory): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .errors): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .issues): | |
| 2013-02-27 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror from 3.0.2 to 3.1. | |
| Rubber-stamped by Jeff Miller. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get focused): Use the wrapper | |
| element since the classname moved from the scroller element. | |
| * UserInterface/External/CodeMirror/codemirror.css: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.js: Updated. | |
| * UserInterface/External/CodeMirror/htmlmixed.js: Updated. | |
| * UserInterface/External/CodeMirror/javascript.js: Updated. | |
| * UserInterface/External/CodeMirror/matchbrackets.js: Updated. | |
| * UserInterface/External/CodeMirror/searchcursor.js: Updated. | |
| 2013-02-26 Timothy Hatcher <timothy@apple.com> | |
| Add support to CodeMirror for incrementing and decrementing numbers. | |
| The key binding are: | |
| * Option-Up: +1 | |
| * Shift-Option-Up: +10 | |
| * Option-PageUp: +10 | |
| * Shift-Option-PageUp: +100 | |
| * Option-Down: -1 | |
| * Shift-Option-Down: -10 | |
| * Option-PageDown: -10 | |
| * Shift-Alt-PageDown: -100 | |
| When altering by 1 or -1 any numbers between 1 and -1 will be altered | |
| by 0.1 or -0.1 instead. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| (alterNumber): Added. Hooked up via the default key map that extends the | |
| Mac keybindings. This means all instances of CodeMirror get this support. | |
| 2013-02-26 Timothy Hatcher <timothy@apple.com> | |
| Add color swatches next to color strings. | |
| <rdar://problem/7206272> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch): Added. | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch > span): Added. | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch:hover > span): Added. | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch:active > span): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Search for colors | |
| and add swatches next to them. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._colorSwatchClicked): Added. Replace the | |
| text with the next color format. | |
| * UserInterface/Color.js: | |
| (WebInspector.Color.prototype.nextFormat): Added. Helper to pick the next format. | |
| 2013-02-26 Timothy Hatcher <timothy@apple.com> | |
| Add checkboxes next to property names and commented out properties. | |
| Unchecking will comment out the property and checking the box next to a property comment | |
| will uncomment it and make it live again. | |
| <rdar://problem/7206272> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: | |
| (.css-style-text-editor.read-only > .CodeMirror pre): Added. Indent the text the same amount | |
| as if there were checkboxes. | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines input[type=checkbox]): Added. | |
| (.css-style-text-editor:hover > .CodeMirror .CodeMirror-lines input[type=checkbox]): Added. | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): Look for comments | |
| that look like properties and add checkboxes in front of them. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): | |
| Create checkbox marker for properties or update the existing one. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._clearTextMarkers): Delete __checkboxMarker. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCheckboxChanged): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyCommentCheckboxChanged): Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): Set the read-only style class | |
| so the text of read-only styles is indented the same amount as if there were checkboxes. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Implement the Rules details style panel. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDeclarationSection.css: Added. | |
| (.style-declaration-section): | |
| (.style-declaration-section + .style-declaration-section): | |
| (.style-declaration-section.last-in-group): | |
| (.style-declaration-section.last-in-group + .style-declaration-section): | |
| (.style-declaration-section.last-in-group + .style-declaration-section:last-child): | |
| (.style-declaration-section:last-child): | |
| (.style-declaration-section > .header): | |
| (.style-declaration-section > .header > .icon): | |
| (.style-declaration-section > .header > .selector): | |
| (.style-declaration-section > .header > .selector:focus): | |
| (.style-declaration-section.selector-locked > .header > .selector): | |
| (.style-declaration-section.locked > .header::after): | |
| (.style-declaration-section > .header > .selector > .matched): | |
| (.style-declaration-section > .header > .origin): | |
| (.style-declaration-section > .header > .origin > .go-to-link): | |
| * UserInterface/CSSStyleDeclarationSection.js: Added. | |
| (WebInspector.CSSStyleDeclarationSection): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.get element): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.get style): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.get lastInGroup): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.set lastInGroup): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.get focused): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.focus): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.refresh.appendSelector): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.refresh): | |
| (WebInspector.CSSStyleDeclarationSection.prototype.updateLayout): | |
| (WebInspector.CSSStyleDeclarationSection.prototype._commitSelector): | |
| * UserInterface/Images/StyleRuleAuthor.pdf: Added. | |
| * UserInterface/Images/StyleRuleInherited.pdf: Added. | |
| * UserInterface/Images/StyleRuleInheritedElement.pdf: Added. | |
| * UserInterface/Images/StyleRuleInspector.pdf: Added. | |
| * UserInterface/Images/StyleRuleUser.pdf: Added. | |
| * UserInterface/Images/StyleRuleUserAgent.pdf: Added. | |
| * UserInterface/Main.html: Included new files. | |
| * UserInterface/RulesStyleDetailsPanel.css: Added. | |
| (.sidebar > .panel.details.css-style .rules .inherited-label): | |
| (.sidebar > .panel.details.css-style .rules .inherited-label + .style-declaration-section): | |
| * UserInterface/RulesStyleDetailsPanel.js: | |
| (WebInspector.RulesStyleDetailsPanel): | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh.appendStyleSection): | |
| (WebInspector.RulesStyleDetailsPanel.prototype.refresh): | |
| (WebInspector.RulesStyleDetailsPanel.prototype.shown): | |
| (WebInspector.RulesStyleDetailsPanel.prototype.hidden): | |
| (WebInspector.RulesStyleDetailsPanel.prototype.widthDidChange): | |
| * UserInterface/StyleRuleIcons.css: Added. | |
| (.author-style-rule-icon .icon): | |
| (.user-style-rule-icon .icon): | |
| (.user-agent-style-rule-icon .icon): | |
| (.inspector-style-rule-icon .icon): | |
| (.inherited-style-rule-icon .icon): | |
| (.inherited-element-style-rule-icon .icon): | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Implement the Computed details style panel. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ComputedStyleDetailsPanel.js: | |
| (WebInspector.ComputedStyleDetailsPanel): | |
| (WebInspector.ComputedStyleDetailsPanel.prototype.refresh): | |
| (WebInspector.ComputedStyleDetailsPanel.prototype.shown): | |
| (WebInspector.ComputedStyleDetailsPanel.prototype.widthDidChange): | |
| (WebInspector.ComputedStyleDetailsPanel.prototype._computedStyleShowAllCheckboxValueChanged): | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Add CSSStyleDeclarationTextEditor. | |
| This class implements a rich text editor for style text. It will reflect the assigned CSSStyleDeclaration. | |
| Edits will be applied to the page and property parse errors or overridden status will be highlighted. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclarationTextEditor.css: Added. | |
| (.css-style-text-editor): | |
| (.css-style-text-editor > .CodeMirror): | |
| (.css-style-text-editor > .CodeMirror *): | |
| (.css-style-text-editor > .CodeMirror-scroll): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines): | |
| (.css-style-text-editor > .CodeMirror pre): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-selected): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-focused .CodeMirror-selected): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-cursor): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.overridden): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.invalid): | |
| (.css-style-text-editor > .CodeMirror .CodeMirror-lines .css-style-declaration-property.not-inherited): | |
| * UserInterface/CSSStyleDeclarationTextEditor.js: Added. | |
| (WebInspector.CSSStyleDeclarationTextEditor): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get element): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get delegate): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set delegate): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get style): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set style): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get focused): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get alwaysShowPropertyNames): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set alwaysShowPropertyNames): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get showsImplicitProperties): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set showsImplicitProperties): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.get sortProperties): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.set sortProperties): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.focus): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.refresh): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.updateLayout): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.shown): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype.hidden): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._formatedContent): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._commitChanges): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._contentChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkers): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._updateTextMarkerForPropertyIfNeeded): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._clearTextMarkers): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties.sortProperty): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._iterateOverProperties): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertyOverriddenStatusChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._propertiesChanged): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._styleOffsetToCodeMirrorPosition): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update.else.lineCount): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent.update): | |
| (WebInspector.CSSStyleDeclarationTextEditor.prototype._resetContent): | |
| * UserInterface/CodeMirrorAdditions.js: | |
| * UserInterface/Main.html: | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Implement the Metrics details style panel. | |
| Converts BoxModelDetailsSectionRow to use the new CSS model. Removes code needed to | |
| work with the old CSS model. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype.get nodeStyles): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype.set nodeStyles): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._refresh): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._getPropertyValueAsPx): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._highlightDOMNode): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createBoxPartElement): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaWidthElement): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaHeightElement): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._startEditing): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._alteredFloatNumber): Added. Copied from the now | |
| removed CSSPropertyPrompt class. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._handleKeyDown): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._editingCancelled): | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput): | |
| * UserInterface/MetricsStyleDetailsPanel.js: | |
| (WebInspector.MetricsStyleDetailsPanel): | |
| (WebInspector.MetricsStyleDetailsPanel.prototype.refresh): | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Remember the scroll position when refreshing the style detail panels. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.refreshIfNeeded): Call _refreshPreservingScrollPosition | |
| instead refresh. | |
| (WebInspector.StyleDetailsPanel.prototype._refreshPreservingScrollPosition): Added. Only remember the | |
| scroll position if the previous node is the same as this one. | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): Call _refreshPreservingScrollPosition | |
| instead refresh. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Tell SidebarPanel and StyleDetailsPanel when the width of the Sidebar changes. | |
| This will be needed to update CodeMirror on the size change. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.visibilityDidChange): Added. Tell the selected | |
| panel to refresh if needed. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.widthDidChange): Added. Tell the selected panel | |
| that the width changed. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set width): Call widthDidChange on the sidebar panel. | |
| (WebInspector.Sidebar.prototype.set collapsed): Ditto. | |
| * UserInterface/SidebarPanel.js: | |
| (WebInspector.SidebarPanel.prototype.widthDidChange): Added stub. | |
| * UserInterface/StyleDetailsPanel.js: | |
| (WebInspector.StyleDetailsPanel.prototype.widthDidChange): Added stub. | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Add start implementation for each of the three Style detail panels. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style): | |
| (.sidebar > .panel.details.css-style > .navigation-bar): | |
| (.sidebar > .panel.details.css-style > .content): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._navigationItemSelected): | |
| * UserInterface/ComputedStyleDetailsPanel.js: Added. | |
| (WebInspector.ComputedStyleDetailsPanel): | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.get needsRefresh): Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector._updateStickyPostionStyles): | |
| * UserInterface/MetricsStyleDetailsPanel.js: Added. | |
| (WebInspector.MetricsStyleDetailsPanel): | |
| * UserInterface/RulesStyleDetailsPanel.js: Added. | |
| (WebInspector.RulesStyleDetailsPanel): | |
| * UserInterface/StyleDetailsPanel.js: Added. | |
| (WebInspector.StyleDetailsPanel): | |
| (WebInspector.StyleDetailsPanel.prototype.get element): | |
| (WebInspector.StyleDetailsPanel.prototype.get navigationItem): | |
| (WebInspector.StyleDetailsPanel.prototype.get nodeStyles): | |
| (WebInspector.StyleDetailsPanel.prototype.shown): | |
| (WebInspector.StyleDetailsPanel.prototype.hidden): | |
| (WebInspector.StyleDetailsPanel.prototype.markAsNeedsRefresh): | |
| (WebInspector.StyleDetailsPanel.prototype.refreshIfNeeded): | |
| (WebInspector.StyleDetailsPanel.prototype.refresh): | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesRefreshed): | |
| (WebInspector.StyleDetailsPanel.prototype._nodeStylesNeedsRefreshed): | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Add start of new implementation of CSSStyleDetailsSidebarPanel. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Added. | |
| (.sidebar > .panel.details.css-style): Added. Empty for now. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: Added. | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.supportsDOMNode): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): | |
| * UserInterface/Images/NavigationItemBrushAndRuler.pdf: Added. | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Remove CSSStyleDetailsSidebarPanel and friends in preparation for a new implementation. | |
| <rdar://problem/7206272&12526319> | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/CSSPropertyPrompt.js: Removed. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Removed. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: Removed. | |
| * UserInterface/ComputedStylePropertiesSection.js: Removed. | |
| * UserInterface/Main.html: Removed files except CSSStyleDetailsSidebarPanel.{js,css}. | |
| * UserInterface/OldCSSMedia.js: Removed. | |
| * UserInterface/OldCSSProperty.js: Removed. | |
| * UserInterface/OldCSSRule.js: Removed. | |
| * UserInterface/OldCSSStyleDeclaration.js: Removed. | |
| * UserInterface/StylePropertiesSection.js: Removed. | |
| * UserInterface/StylePropertyTreeElement.js: Removed. | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Remove AppearanceDetailsSidebarPanel in preparation for it being merged with Style details. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: Removed. | |
| * UserInterface/Main.html: Removed AppearanceDetailsSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Removed AppearanceDetailsSidebarPanel. | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Add support for text only navigation buttons. | |
| This will be used by the navigation bar in the new Styles sidebar. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar .item.button.text-only): Added. | |
| (.navigation-bar .item.button:not(.disabled):not(.radio):not(.suppress-bezel):active): | |
| Use -webkit-calc in the background-position to work with variable widths. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): | |
| (WebInspector.ButtonNavigationItem.prototype.get label): | |
| (WebInspector.ButtonNavigationItem.prototype.set label): | |
| (WebInspector.ButtonNavigationItem.prototype.set image): | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| (.navigation-bar .item.radio.button:not(.text-only)): Added :not(.text-only) to allow | |
| variable based on text length. | |
| (.navigation-bar.collapsed .item.radio.button:not(.text-only)): Ditto. | |
| (.navigation-bar .item.radio.button.selected): Use -webkit-calc in the background-position | |
| to work with variable widths. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Don't try to commit changes before we have new text positions. | |
| We need to keep the startStyleSheetTextPosition and endStyleSheetTextPosition up-to-date. | |
| If we don't have the correct positions then we can corrupt the stylesheet the next time | |
| the user makes an edit. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Initialize _stylesNeedingTextCommited to []. | |
| (WebInspector.DOMNodeStyles.prototype.refresh): Call changeStyleText for the next style | |
| object that needs changed. | |
| (WebInspector.DOMNodeStyles.prototype.changeRuleSelector): Set _needsRefresh to true. | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText): If we need a refresh then it is not safe | |
| to make the edits now. Store the text and remember the style so we can commit it after the next refresh. | |
| (WebInspector.DOMNodeStyles.prototype.changePropertyText): Set _needsRefresh to true. | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Call refresh to get updated positions and | |
| computed style info. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Always try to update the resource when a stylesheet changes. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.styleSheetChanged): Always call _updateResourceContent. This | |
| was preventing resource updates when the stylesheet changed because of a sidebar text edit. Checking the result | |
| of noteContentDidChange was to prevent updating the resource content if the change originated from a resource edit. | |
| However, we will soon allow text edits from the sidebar and the check was preventing resources from being updated. | |
| The new check in the content setter of SourceCodeRevision prevents updating resources when they haven't changed. | |
| * UserInterface/SourceCodeRevision.js: | |
| (WebInspector.SourceCodeRevision.prototype.set content): Return early if the content is the same. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Fix typo that was preventing refresh of DOMNodeStyles. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): The property is ownerStyleSheet, not parentStyleSheet. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Workaround a bug where matched rules is empty for stylesheets with imported stylesheets. | |
| If matched rules is empty (rare because of user agent stylesheet rules) then WebCore might | |
| be waiting for an @import rule to load. Check again after a delay until we get some results or timeout. | |
| We shouldn't need to poll like this, https://webkit.org/b/110750 tracks this problem. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): Removed map clearing and call to CSSAgent.getInlineStylesForNode | |
| and CSSAgent.getComputedStyleForNode. We only want to fetch those if fetchedMatchedStyles succeeds. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): Schedule another refresh attempt and | |
| return early if the match is empty. Moved the map clearing here after the early return. Call CSSAgent.getInlineStylesForNode. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): Call CSSAgent.getComputedStyleForNode. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Don't reuse a pending property if it is already used. | |
| This was happening when parsing an edit that had multiple properties with the same name. | |
| The last property to be parsed was picking the same pending property and preventing | |
| all properties from being represented with the right value, etc. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Only pick a pending property | |
| if the index is NaN. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Prevent firing change events in more places when nothing has changed. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.update.delayed): Don't fire the event if there is text and it hasn't changed. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): Only fire Refreshed if !dontFireRefreshedEvent. | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText.attributeChanged): Pass true to refresh(). | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText.contentDidChange): Added. Call refresh(). | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText.fetchedStyleSheetContent): Listen for content change. | |
| (WebInspector.DOMNodeStyles.prototype._attributesDidChange): Ignore if _ignoreNextStyleAttributeDidChangeEvent | |
| is set and the attribute is "style". | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Minimize the number of times the OverriddenStatusChanged is fired for properties. | |
| When updating styles, DOMNodeStyles will sometimes temporarily change overridden | |
| to false only to later change it back to true when it finds the effective property | |
| in a later style in the cascade. To minimize churn we coalesce these changes and | |
| only fire the event if the value is different after a delay. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.update): Use the setter for overridden | |
| if we want to fire events. | |
| (WebInspector.CSSProperty.prototype.set overridden.delayed): Added. | |
| (WebInspector.CSSProperty.prototype.set overridden): Coalesce changes and | |
| only fire the event if the end result differs. | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Delay firing the PropertiesChanged event so DOMNodeStyles has a chance | |
| to mark overridden and associated properties. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.update.delayed): Added. Fire the event here. | |
| (WebInspector.CSSStyleDeclaration.prototype.update): Set a timeout and call delayed. | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Consider the properties as enabled for computed style declarations. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.get enabled): Check for CSSStyleDeclaration.Type.Computed. | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Add support for checking if a property has another vendor prefix. | |
| This will be used to style those properties differently instead of marking | |
| them as completely invalid. Also fix a regex error in canonicalNameForPropertyName. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.update): Delete _hasOtherVendorPrefix. | |
| (WebInspector.CSSProperty.prototype.hasOtherVendorPrefix): Added. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.propertyNameHasOtherVendorPrefix): Added. | |
| (WebInspector.CSSStyleManager.prototype.canonicalNameForPropertyName): Fix the regex | |
| to check the beginning of the string. | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Add effectivePropertyForName to DOMNodeStyles. | |
| Also mark the longhand properties as effective if the shorthand property is the effective property. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.effectivePropertyForName): Added. | |
| (WebInspector.DOMNodeStyles.prototype._updateStyleCascade): Pass _propertyNameToEffectivePropertyMap | |
| to _associateRelatedProperties. | |
| (WebInspector.DOMNodeStyles.prototype._associateRelatedProperties): Set propertyNameToEffectiveProperty | |
| for the longhand if the related shorthand is effective. | |
| 2013-02-21 Timothy Hatcher <timothy@apple.com> | |
| Don't try to add or remove a CSSProperty if the index is wrong. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.add): Return early if index is not NaN. | |
| (WebInspector.CSSProperty.prototype.remove): Return early if index is NaN. | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Mark DOMNodesStyles as needing refresh if attributes change on the node. | |
| Also fix a leak with the CSSStyleSheet.Event.ContentDidChange listener. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.Event.AttributeModified): Added. | |
| (WebInspector.DOMNode.Event.AttributeRemoved): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Listen for AttributeModified and AttributeRemoved events. | |
| Stop listening for CSSStyleSheet.Event.ContentDidChange globally to avoid a leak. | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): Listen for | |
| CSSStyleSheet.Event.ContentDidChange on the stylesheet object here. | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): Ditto. | |
| (WebInspector.DOMNodeStyles.prototype._attributesDidChange): Added. Mark as needing | |
| refresh and fire the NeedsRefresh event. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._attributeModified): Fire the event on DOMNode too. | |
| (WebInspector.DOMTreeManager.prototype._attributeRemoved): Ditto. | |
| 2013-02-22 Timothy Hatcher <timothy@apple.com> | |
| Fix some event listener leaks related to the DOM content view. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.closed): Call close on the DOMTreeOutline. | |
| Use the new version of removeEventListener by passing null for type and listener. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype.close): Added. Call close on the DOMTreeUpdater. | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater.prototype.close): Added. Call removeEventListener. | |
| * UserInterface/Object.js: | |
| (WebInspector.Object.addEventListener): Prevent registering multiple times. | |
| (WebInspector.Object.removeEventListener): Handle a null eventType by looping over all | |
| the registered types. Delete _listeners if the map is empty. | |
| 2013-02-20 Timothy Hatcher <timothy@apple.com> | |
| Avoid a crash when changing the text of an inline style. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.attributeChanged): Set the style attribute | |
| on the node when the style is an inline style. | |
| 2013-02-20 Timothy Hatcher <timothy@apple.com> | |
| Return early in the CSSProperty and CSSStyleDeclaration setters if the value does not change. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.set text): Return early. | |
| (WebInspector.CSSProperty.prototype.set name): Ditto. | |
| (WebInspector.CSSProperty.prototype.set value): Ditto. | |
| (WebInspector.CSSProperty.prototype.set priority): Ditto. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.set text): Return early. | |
| 2013-02-20 Timothy Hatcher <timothy@apple.com> | |
| Properly parse CSSProperty.status and handle when it is missing. | |
| The Inspector.json documentation was incorrect about this, and has been | |
| fixed in r143465. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty): Added anonymous parameter. | |
| (WebInspector.CSSProperty.prototype.update): Ditto. | |
| (WebInspector.CSSProperty.prototype.get anonymous): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Set anonymous | |
| to true when status is "style". Also default to "style" when status is missing. | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): Skip anonymous | |
| properties. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Correct and simplify overridden property marking. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.isActive): Removed. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): Only | |
| use the propertyNameToEffectiveProperty map to accomplish what we needed | |
| three maps for before. Only enabled is checked, instead of the old isActive | |
| function. The isActive function was skipping already overridden properties, | |
| so repeat calls to _markOverriddenProperties would not work correctly. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Store all properties for inherited styles. | |
| We need all properties so we can allow editing inherited styles while | |
| not removing the non-inherited properties when the edits are applied. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.update): | |
| (WebInspector.CSSProperty.prototype.get inherited): | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Properly handle repeat occurrences of the same rule. | |
| A rule might match multiple times if the selector is generic and matches | |
| ancestors and has inherited properties. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Add matchedSelectors and matchedSelectorText to CSSRule. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSRule.js: | |
| (WebInspector.CSSRule.prototype.update): Delete _matchedSelectors and _matchedSelectorText. | |
| (WebInspector.CSSRule.prototype.get matchedSelectors): Added. | |
| (WebInspector.CSSRule.prototype.get matchedSelectorText): Added. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Add editable getter to CSSRule. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSRule.js: | |
| (WebInspector.CSSRule.prototype.get editable): Added. | |
| (WebInspector.CSSRule.prototype.set selectorText): Return early if not editable | |
| or if the selectors already match. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.get editable): Check the rule's editable | |
| property too. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Add orderedStyles to DOMNodeStyles. | |
| This will allow the UI to easily display the styles in the right order. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Added _orderedStyles. | |
| (WebInspector.DOMNodeStyles.prototype.get orderedStyles): Added. | |
| (WebInspector.DOMNodeStyles.prototype._updateStyleCascade): Store orderedStyles | |
| on the DOMNodeStyles object and the pseudo element objects. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Store matched rules in reverse order so the most specific rule is first, not last. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.parseRuleMatchArrayPayload): | |
| Iterate in reverse order to match the cascade order. | |
| (WebInspector.DOMNodeStyles.prototype.changeRuleSelector.ruleSelectorChanged): Fix a typo. | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Ditto. | |
| (WebInspector.DOMNodeStyles.prototype._collectStylesInCascadeOrder): | |
| Iterate in normal order now that they stored in reverse order. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Fix parsing of pseudo styles and inherited inline styles. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): Properly | |
| iterate of the pseudoElementRulesPayload array. Also fix the arguments passed | |
| to _parseStyleDeclarationPayload. The first argument was 'this', back when | |
| it was using call(). | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Store the relevant node on CSSStyleDeclaration. | |
| The node is useful for inherited styles so we can jump to the | |
| element the styles are inherited from. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration): | |
| (WebInspector.CSSStyleDeclaration.prototype.get node): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.parseRuleMatchArrayPayload): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| 2013-02-25 Timothy Hatcher <timothy@apple.com> | |
| Make copy work if there is a CodeMirror editor focused in the sidebar. | |
| The content view was stealing the copy event and preventing the editor from putting | |
| anything on the pasteboard. We were also having a focus issue where the console or | |
| other editor was staying focused after clicking the DOM tree. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.isEventTargetAnEditableField): Correct the check to include CodeMirror | |
| and also only count text input types. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added focus event listener. | |
| (WebInspector._focusChanged): Added. Make a caret selection inside the focused element. | |
| This is needed (at least) to remove caret from console when focus is moved. | |
| (WebInspector._copy): Only pass along the copy event if the target isn't an editable field. | |
| 2013-02-19 Timothy Hatcher <timothy@apple.com> | |
| Don't allow text selection in data grid rows. | |
| The row selection conflicts with the text range selection. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid td): Removed -webkit-user-select: text. | |
| 2013-02-26 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13265166> Remote inspecting an iOS 6.1 device never has the dashboard timer stop | |
| Previous to iOS7, we don't get a frameId reported for timeline events. We fallback to using the | |
| page's loadEventFired event and message the timelineManager to use the reported timestamp | |
| as the _loadEventTime in case it hadn't already been set. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.prototype.loadEventFired): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.pageDidLoad): | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11978845> Pressing delete on a file should delete all breakpoints | |
| Allow TreeOutlines to handle keyboard events on TreeElements if the | |
| TreeElement hasn't already handled the event. This will allow the | |
| breakpoint outline to handle delete keys pressed on resources. | |
| Likewise, allow TreeOutlines to handle context menus on TreeElements | |
| that don't specifically have a context menu handler. This will allow | |
| the breakpoint outline to show a context menu for resources. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointsBeneathTreeElement): | |
| (WebInspector.DebuggerSidebarPanel.prototype._removeAllBreakpoints): | |
| (WebInspector.DebuggerSidebarPanel.prototype._toggleAllBreakpoints): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineDeleteTreeElement): | |
| (WebInspector.DebuggerSidebarPanel.prototype.removeAllResourceBreakpoints): | |
| (WebInspector.DebuggerSidebarPanel.prototype.toggleAllResourceBreakpoints): | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointTreeOutlineContextMenuTreeElement): | |
| Setup ondelete and oncontextmenu handlers on the breakpoint tree outline. | |
| The delete action deletes all breakpoints in that resource. The content | |
| menu action provides a choice to delete or toggle all breakpoints. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems): | |
| Reorder and rename the context menus to more closely match Xcode. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline.prototype._treeKeyDown): | |
| Send common key events up to the tree outline if it implements them. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.onattach.this._boundContextMenuEventHandler): | |
| (WebInspector.GeneralTreeElement.prototype.onattach): | |
| Bind a TreeOutline context menu to the individual GeneralTreeElements if the | |
| specific GeneralTreeElement does not have a context menu handler. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13299163> Give Breakpoint Tree Elements Context Menus to Delete and Toggle | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems): | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems.removeBreakpoint): | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems.toggleBreakpoint): | |
| Offer context menu items to remove and toggle the breakpoint, if possible. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Update remaining SourceCodeLocation constructors. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._createSourceCodeLocation): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype._callFramesFromPayload.createCallFrame): | |
| (WebInspector.TimelineManager.prototype._callFramesFromPayload): | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Update CallFrame displays for SourceMap display locations. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Use the display (mapped) location when available. Multiple editors | |
| may show the execution line, the original and mapped editors. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload): | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype): | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Add isEmptyObject instead of doing Object.keys(foo).length | |
| In benchmarks of empty, small, and large objects isEmptyObject | |
| performed better then checking the length of Object.keys. Especially | |
| for large objects. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype._associateRelatedProperties): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid): | |
| * UserInterface/RemoteObject.js: | |
| (WebInspector.LocalJSONObject.prototype.get hasChildren): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._removeBreakpointWithEditorLineInfo): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._removeBreakpointFromLineAndColumn): | |
| (WebInspector.TextEditor.prototype): | |
| * UserInterface/Utilities.js: | |
| (isEmptyObject): | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Get Breakpoints Working with SourceMaps - Line + Column Breakpoint Support. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Previously breakpoints could only appear in a single SourceCodeTextEditor, and | |
| only one could be placed on a line. After this patch: | |
| - Breakpoints may show up in multiple editors at the original and mapped locations. | |
| - Breakpoints effective locations may be on columns. If you set a breakpoint on | |
| a line in a mapped resource, it may map back to a non-0 column in the original. | |
| - Multiple breakpoints may be set on a line. If you set a breakpoint on a few | |
| lines in a mapped resource, they may all map back to the same line in the original | |
| but just have different column offsets. | |
| Breakpoints are still set and saved with their original SourceMapLocation locations. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode): | |
| (WebInspector.DebuggerManager.prototype._associateBreakpointsWithSourceCode): | |
| When looking up breakpoints for a source code, associate them with the source code | |
| at the same time by setting the Breakpoint's SourceCodeLocation's sourceCode. The | |
| breakpoints for a SourceMapResource are only those in the originator that have | |
| a display location inside the mapped resource. | |
| (WebInspector.DebuggerManager.prototype.reset): | |
| Disassociate breakpoints on reset, by clearing the SourceCodeLocation's sourceCode. | |
| (WebInspector.DebuggerManager.prototype._breakpointSourceCodeLocationDidChange): | |
| Dispatch a new BreakpointMoved event. There were already existing events for | |
| BreakpointAdded and Removed but not Moved. We add this for convenience, there | |
| are currently no users though, they all watch the breakpoints source code location. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.setBreakpointInfoForLineAndColumn): | |
| (WebInspector.TextEditor.prototype._addBreakpointToLineAndColumnWithInfo): | |
| (WebInspector.TextEditor.prototype._removeBreakpointFromLineAndColumn): | |
| Update setBreakpointInfo to include line + column numbers. | |
| (WebInspector.TextEditor.prototype._setBreakpointStylesOnLine.updateStyles): | |
| (WebInspector.TextEditor.prototype._setBreakpointStylesOnLine): | |
| Updating breakpoint style now handles multi-breakpoints. For multi-breakpoints | |
| we only style it as disabled if all breakpoints on that line are disabled. | |
| Likewise for resolved. | |
| (WebInspector.TextEditor.prototype._allColumnBreakpointInfoForLine): | |
| (WebInspector.TextEditor.prototype._setColumnBreakpointInfoForLine): | |
| Now that a line may have multiple column breakpoints, this is a bulk | |
| getter and setter used during breakpoint dragging to set the breakpoint | |
| infos on a line. | |
| (WebInspector.TextEditor.prototype._gutterMouseDown): | |
| (WebInspector.TextEditor.prototype._documentMouseMoved): | |
| (WebInspector.TextEditor.prototype._documentMouseUp): | |
| Do nothing if clicking on a multi-breakpoint. Otherwise, when dragging | |
| remember the original breakpoints line and column information. While the | |
| drag is happening, we are already updating our internal line + column | |
| information, so in mouse up when notifying delegates we can ignore their | |
| setBreakpointInfo calls. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror .has-breakpoint.multiple-breakpoints .CodeMirror-linenumber): | |
| (.text-editor > .CodeMirror .has-breakpoint.multiple-breakpoints .CodeMirror-linenumber::before): | |
| Styles for a line with multiple breakpoints. We show a centered white | |
| ellipsis and hide the line number. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): | |
| (WebInspector.SourceCodeTextEditor.prototype.close): | |
| Now that breakpoints can be added in one editor and affect a different editor | |
| we must listen for breakpoint added and move (via it's source code location). | |
| Register for the events in the constructor and clear in close. | |
| (WebInspector.SourceCodeTextEditor.prototype._editorLineInfoForSourceCodeLocation): | |
| SourceCodeTextEditors for original resources show their content with original line | |
| numbers. For mapped resources show their content with display line numbers. So | |
| whenever we have a sourceCodeLocation, we use this to convert it to the "editor" | |
| line info, which is just the line + column number for this editor + TextEditor. | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointForEditorLineInfo): | |
| (WebInspector.SourceCodeTextEditor.prototype._addBreakpointWithEditorLineInfo): | |
| (WebInspector.SourceCodeTextEditor.prototype._removeBreakpointWithEditorLineInfo): | |
| Update addBreakpoint and removeBreakpoint for line + column, instead of just line. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointStatus): | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointAdded): | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointRemoved): | |
| When breakpoints are added, removed update our map, and pass that information | |
| on to the underlying TextEditor. | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointLocation): | |
| When a breakpoint moves, we need to lookup the breakpoint from its old location. | |
| The old location is different depending on if we are the editor for the original | |
| or mapped resource. So work out the correct old location, and pass that | |
| information and the underlying TextEditor. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointMoved): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointToggled): | |
| When the TextEditor modifies a breakpoint, we must update our maps for that | |
| breakpoint. When we tell the DebuggerManager about the updates, we will | |
| expect some events to fire to update other editors that might be interested | |
| in that breakpoint. We can ignore those events ourselves, because we | |
| just made the change. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Sort Breakpoints in the Debugger Sidebar | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): | |
| (WebInspector.DebuggerSidebarPanel.prototype._compareTopLevelTreeElements): | |
| (WebInspector.DebuggerSidebarPanel.prototype._compareBreakpointTreeElements): | |
| Sort BreakpointsTreeElements (children of Resources) by Line #. | |
| Sort top level tree elements by title, always placing the special breakpoints at the top. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Give BreakpointTreeElements a ContextMenu to Reveal Original Resource. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint.prototype.appendContextMenuItems): | |
| Given a context menu, add a show original resource menu item. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype._detach): | |
| Add an ondetach event to balance onattach. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.onattach): | |
| (WebInspector.GeneralTreeElement.prototype.ondetach): | |
| Manage adding and removing a contextmenu event listener for oncontextmenu. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement.prototype.oncontextmenu): | |
| Show a ContextMenu with the Breakpoint's menu items. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Make Breakpoint to use a SourceCodeLocation. Update its BreakpointTreeElement display. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| This is the start of modifying Breakpoints to use SourceCodeLocation. | |
| There are remaining users (SourceCodeTextEditor) which will be addressed | |
| in a following patch. This updates Breakpoint and its display in the sidebar. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): | |
| (WebInspector.Breakpoint.prototype.get sourceCodeLocation): | |
| (WebInspector.Breakpoint.prototype.get info): | |
| Update the constructor and serialization to use SourceCodeLocations, | |
| which includes a line number and column number. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement): | |
| (WebInspector.BreakpointTreeElement.prototype._updateTitles): | |
| (WebInspector.BreakpointTreeElement.prototype._updateStatus): | |
| BreakpointTreeElements always display the display line + column. They | |
| show the original location as a subtitle. | |
| (WebInspector.BreakpointTreeElement.prototype._breakpointDisplayLocationDidChange): | |
| When the breakpoint's display location changes update our titles. | |
| However, if the breakpoint actually changed resources, then prepare | |
| for removal. The sidebar will detect this and create a new tree element. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.didSetBreakpoint): | |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): | |
| Set breakpoints with the breakpoints line + column information. | |
| * UserInterface/DebuggerSidebarPanel.js: | |
| (WebInspector.DebuggerSidebarPanel): | |
| (WebInspector.DebuggerSidebarPanel.prototype._addBreakpoint): | |
| Simplify now that the breakpoint's SourceCodeLocation already has the | |
| original SourceCode. Also, create SourceMapResourceTreeElements as needed. | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointRemoved): | |
| (WebInspector.DebuggerSidebarPanel.prototype._removeBreakpointTreeElement): | |
| Refactor breakpoint removal code so it can be shared. | |
| (WebInspector.DebuggerSidebarPanel.prototype._breakpointDisplayLocationDidChange): | |
| If a breakpoint changes resources remove the old breakpoint tree element | |
| and add a new one with the new location. | |
| (WebInspector.DebuggerSidebarPanel.prototype._treeElementSelected): | |
| Show the display location. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Make Find banner when viewing a SourceMapResource work. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| A SourceMapResource can display its content in a SourceCodeTextEditor just | |
| like regular resources. However, it does not use the backend to search | |
| it's contents, because its contents are all loaded by the frontend. Give | |
| customPerformSearch a return value saying whether or not it was handled. | |
| If not handled, we fall back to CodeMirror's text search, which works fine. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.performSearch): | |
| If the customPerformSearch returns false, then the custom search did | |
| not handle the search, and we fallback to the default CodeMirror search. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Make SourceCodeLocation provide raw and mapped locations. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| SourceCodeLocation automatically provide original (raw) and mapped (display) | |
| source code locations. It's API requires that it be constructed with the raw | |
| source code and location information, which is automated by using | |
| SourceCode.prototype.createSourceCodeLocation, passing a lineNumber and | |
| columnNumber for the source code that you're invoking the method on. | |
| All uses of SourceCodeLocation will be audited and updated in later patches, | |
| this patch includes just the core SourceCodeLocation uses. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeLocation): | |
| (WebInspector.ResourceSidebarPanel.prototype.showOriginalSourceCodeLocation): | |
| By default, when showing any location we want to show it's display location, | |
| which will be the source map resource if there is one, otherwise the raw resource. | |
| If needed, there is a way to explicitly show the original source code location. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.createSourceCodeLocation): | |
| Default implementation, just use the given line and column number. | |
| * UserInterface/SourceMapResource.js: | |
| (WebInspector.SourceMapResource.prototype.createSourceCodeLocation): | |
| Mapped resource. Reverse lookup the raw line and column. Adjust if | |
| needed for inline <script> offsets. And construct the SourceCodeLocation | |
| with the raw values. | |
| * UserInterface/SourceCodeLocation.js: | |
| (WebInspector.SourceCodeLocation): | |
| (WebInspector.SourceCodeLocation.prototype.get sourceCode): | |
| (WebInspector.SourceCodeLocation.prototype.get lineNumber): | |
| (WebInspector.SourceCodeLocation.prototype.get columnNumber): | |
| This is the raw location data. | |
| (WebInspector.SourceCodeLocation.prototype.hasMappedLocation): | |
| (WebInspector.SourceCodeLocation.prototype.get displaySourceCode): | |
| (WebInspector.SourceCodeLocation.prototype.get displayLineNumber): | |
| (WebInspector.SourceCodeLocation.prototype.get displayColumnNumber): | |
| If we have a mapped location, use that. Otherwise use the raw location. | |
| (WebInspector.SourceCodeLocation.prototype.update): | |
| If a user of a SourceCodeLocation wants to update the location there | |
| are restrictions. The updated location must be either the raw resource | |
| or the mapped resource. SourceCodeLocation then does the rest, and | |
| updates its internal values and dispatches events appropriately. | |
| (WebInspector.SourceCodeLocation.prototype.set sourceCode): | |
| There are cases where the inspector (Breakpoints) which may want to keep | |
| around a line/column SourceCodeLocation but without an associated | |
| SourceCode. Setting the source code to null will make this a dumb | |
| location, and setting it to a source code will update appropriately. | |
| (WebInspector.SourceCodeLocation.prototype._resetMappedLocation): | |
| (WebInspector.SourceCodeLocation.prototype._setMappedLocation): | |
| (WebInspector.SourceCodeLocation.prototype._resolveMappedLocation): | |
| We lazily resolve the mapped location when needed. In cases where | |
| a SourceCodeLocation is created from a SourceMapResource the mapped | |
| location is already known and can be set directly. | |
| (WebInspector.SourceCodeLocation.prototype._makeChangeAndDispatchChangeEventIfNeeded): | |
| Clients of SourceCodeLocation may want to update their display if | |
| a source map was added and a new better location is available. We | |
| provide events for any change, or just display location changes. | |
| (WebInspector.SourceCodeLocation.prototype._sourceCodeSourceMapAdded): | |
| Whenever the raw resource adds a source map check if there was a | |
| display location change. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Show SourceMapResources in the Resources Sidebar | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| SourceMapResources are added to the Resources Sidebar as children | |
| of the originator Resource. So if a Script has a SourceMap with | |
| multiple inputs, there will be a disclosure triangle by the Script | |
| and you can see the original resources for that Script. | |
| Since both Resources and Scripts can have SourceMapChildren this | |
| patch refactors both of those TreeElement classes to extend from a | |
| common SourceCodeTreeElement class that manages the new | |
| SourceMapResourceTreeElement children. | |
| FrameTreeElements, special subclasses of ResourceTreeElements and | |
| thus SourceCodeTreeElements handle their own source map resource | |
| children. This is so that SourceMapResources for <script>s in the | |
| frame are placed along with that frame's same typed resources. | |
| SourceMapResources that are scripts will be in the Scripts folder, | |
| or no folder if the frame has only a few resources. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| A TreeOutline must opt-in to displaying source map tree elements | |
| for resources. We only show source map children of resources in the | |
| main resource tree outline. We will not show them in the search | |
| results tree outline or breakpoints tree outline. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.callFirstAncestorFunction): | |
| Move this code from ResourceTreeElement to General. It is useful. | |
| * UserInterface/SourceCodeTreeElement.js: Added. | |
| (WebInspector.SourceCodeTreeElement): | |
| (WebInspector.SourceCodeTreeElement.prototype.updateSourceMapResources): | |
| (WebInspector.SourceCodeTreeElement.prototype.onattach): | |
| (WebInspector.SourceCodeTreeElement.prototype.onpopulate): | |
| (WebInspector.SourceCodeTreeElement.prototype.descendantResourceTreeElementTypeDidChange): | |
| (WebInspector.SourceCodeTreeElement.prototype._updateSourceCode): | |
| Common superclass for Script and Resource TreeElements. This manages the | |
| child source map resources. Sorts them, and replaces them when they change. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement): | |
| (WebInspector.ResourceTreeElement.compareResourceTreeElements): Common comparison. | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): | |
| (WebInspector.ResourceTreeElement.prototype._typeDidChange): | |
| * UserInterface/ScriptTreeElement.js: | |
| (WebInspector.ScriptTreeElement): | |
| Refactor as subclasses of SourceCodeTreeElement. | |
| * UserInterface/SourceMapResourceTreeElement.js: Added. | |
| (WebInspector.SourceMapResourceTreeElement): | |
| (WebInspector.SourceMapResourceTreeElement.prototype.onattach): | |
| (WebInspector.SourceMapResourceTreeElement.prototype._updateTitles): | |
| A SourceMapResourceTreeElement is very simple. It adds a style class to | |
| get unique icons, lazy loads on attach, and since it doesn't have a | |
| parent frame it uses it's originator's host to display a subtitle if | |
| it is loaded from a different origin. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype.updateSourceMapResources): | |
| (WebInspector.FrameTreeElement.prototype.onattach): | |
| (WebInspector.FrameTreeElement.prototype.onpopulate): | |
| (WebInspector.FrameTreeElement.prototype._updateParentStatus): | |
| (WebInspector.FrameTreeElement.prototype._addTreeElementForRepresentedObject): | |
| (WebInspector.FrameTreeElement.prototype._insertResourceTreeElement): | |
| Handle our own SourceMapResource children in onpopulate and addTreeElement paths. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceIcons.css: | |
| (.source-map-resource.resource-icon .icon): | |
| (.source-map-resource.resource-icon.resource-type-script .icon): | |
| * UserInterface/Images/ClippingGeneric.png: Added. | |
| * UserInterface/Images/ClippingGeneric@2x.png: Added. | |
| Add new files, images, and styles to trigger the images. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Download SourceMaps and create SourceMapResources. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceMap.js: | |
| (WebInspector.SourceMap): | |
| (WebInspector.SourceMap.prototype.get originalSourceCode): | |
| (WebInspector.SourceMap.prototype.get resources): | |
| (WebInspector.SourceMap.prototype.addResource): | |
| (WebInspector.SourceMap.prototype.resourceForURL): | |
| Give a SourceMap references to the SourceCode that originally requested | |
| it, and the SourceMapResources created for the input sources. | |
| * UserInterface/SourceMapResource.js: Added. | |
| (WebInspector.SourceMapResource): | |
| (WebInspector.SourceMapResource.prototype.get sourceMap): | |
| A SourceMapResource is a Resource subclass with no loading information. | |
| It has a reference to the SourceMap that it belongs to. | |
| (WebInspector.SourceMapResource.prototype.canRequestContentFromBackend): | |
| (WebInspector.SourceMapResource.prototype.requestContentFromBackend): | |
| The content is loaded on demand. Normal requests for SourceCode content | |
| goes through SourceCode.prototype.requestContent. Since the content is | |
| loaded on demand, the type and data are filled in after content is | |
| requested, and we fire normal Resource events, like Type changed. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.markAsFinished): | |
| Don't request content if we can't / shouldn't request content from the | |
| backend. Normally resources load their content as soon as they finish | |
| loading. However SourceMapResources load their content and then mark | |
| as finished. Without this we would get a harmless assert. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode): | |
| (WebInspector.SourceCode.prototype.get sourceMaps): | |
| (WebInspector.SourceCode.prototype.addSourceMap): | |
| Any SourceCode resource can have a set of source maps. In the common case, | |
| a Script will have a single source map. However a Document resource map | |
| have multiple sourceMaps for different inline <script> sections. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): | |
| The SourceMap resource's url comes in from scriptDidParse. Pass it on | |
| eventually to the Script constructor. | |
| * UserInterface/Script.js: | |
| (WebInspector.Script): | |
| If we have a source map URL, load and parse the source map. | |
| * UserInterface/SourceMapManager.js: Added. | |
| (WebInspector.SourceMapManager): | |
| (WebInspector.SourceMapManager.prototype.sourceMapForURL): | |
| (WebInspector.SourceMapManager.prototype.downloadSourceMap): | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSourceMap): | |
| (WebInspector.SourceMapManager.prototype._loadAndParseFailed): | |
| (WebInspector.SourceMapManager.prototype._loadAndParseSucceeded): | |
| (WebInspector.SourceMapManager.prototype._mainResourceDidChange): | |
| A global set of SourceMaps by url. This prevents multiple downloads of | |
| the same source map. The map is cleared on main resource changes. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| Add new files and instantiate the new manager singleton. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Add parts of SourceMap.js from OpenSource. | |
| <rdar://problem/11735116> PARITY (WebKit Web Inspector): Missing Source Map support | |
| This parses a v3 SourceMap file. The spec is linked at the top. | |
| SourceMap.js comes from OpenSource's frontend/SourceMap.js. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/SourceMap.js: Added. | |
| (WebInspector.SourceMap): | |
| (WebInspector.SourceMap.prototype.sources): | |
| (WebInspector.SourceMap.prototype.sourceContent): | |
| (WebInspector.SourceMap.prototype._parseMappingPayload): | |
| (WebInspector.SourceMap.prototype._parseSections): | |
| (WebInspector.SourceMap.prototype._parseMap): | |
| (WebInspector.SourceMap.prototype._isSeparator): | |
| (WebInspector.SourceMap.prototype._decodeVLQ): | |
| (WebInspector.SourceMap.StringCharIterator): | |
| (WebInspector.SourceMap.StringCharIterator.prototype.next): | |
| (WebInspector.SourceMap.StringCharIterator.prototype.peek): | |
| (WebInspector.SourceMap.StringCharIterator.prototype.hasNext): | |
| (WebInspector.PositionBasedSourceMap): | |
| (WebInspector.PositionBasedSourceMap.prototype.findEntry): | |
| (WebInspector.PositionBasedSourceMap.prototype.findEntryReversed): | |
| (WebInspector.PositionBasedSourceMap.prototype._parseMap): | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Only allow left clicks on the gutter / dragging breakpoints. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype): | |
| Bail if the mouse down button is not the left button. | |
| 2013-02-26 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove unused ContextMenu soft menu code. | |
| Rubber-stamped by Ricky Mondello. | |
| * UserInterface/ContextMenu.js: | |
| 2013-02-21 Joseph Pecoraro <pecoraro@apple.com> | |
| Standardize on "Event" not "Events". There were a few outliers. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DatabaseContentView.js: | |
| (WebInspector.DatabaseContentView.prototype._queryFinished): | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype): | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.prototype.applySuggestion): | |
| (WebInspector.TextPrompt.prototype.acceptSuggestion): | |
| 2013-02-19 Jeff Miller <jeffm@apple.com> | |
| Regenerate localizedStrings.js after recent changes. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Regenerated. | |
| 2013-02-18 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13232839> Show Error Console (Option+Cmd+C) should always put keyboard focus in the console | |
| The keyboard shortcut already existed, but if used to open the inspector | |
| the focus was getting stolen away by other elements with tabindex and | |
| the DOM Tree. Fix this so focus is not stolen away. As an added bonus | |
| the console now keeps its focus across page reloads and navigations. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showConsole): | |
| When the keyboard shortcut is triggered, focus the quick console. If | |
| the page is still loading, we will need to focus again because other | |
| elements with tabindex may steal focus away from the console prompt. | |
| * UserInterface/Main.js: | |
| (WebInspector.isConsoleFocused): | |
| Global accessor for whether or not the console is focused. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.shown): | |
| When showing a the DOMTreeOutline, never steal focus from the console. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable.selectNode): | |
| When the root dom node changes and we reveal and select an element, | |
| never steal focus from the console. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype.setVisible): | |
| Provide an optional omitFocus parameter to pass on. It already exists below. | |
| 2013-02-18 Joseph Pecoraro <pecoraro@apple.com> | |
| Move .indeterminate-progress-spinner from resources only to all content views. | |
| ScriptContentViews also use spinners, and they were not getting the | |
| proper styling if you were fast enough to see it! | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentView.css: Renamed from WebInspector/UserInterface/ResourceContentView.css. | |
| (.content-view > .indeterminate-progress-spinner): | |
| * UserInterface/Main.html: | |
| 2013-02-18 Joseph Pecoraro <pecoraro@apple.com> | |
| Hide the Image Size section for Image resources if the load failed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection): | |
| Don't show an empty image size section if the image failed to load. | |
| 2013-02-16 Joseph Pecoraro <pecoraro@apple.com> | |
| Accidentally added some code referencing SourceMapResource before it was added. | |
| Unreviewed cleanup. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): | |
| 2013-02-18 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13180267> REGRESSION: Reload button is no longer visible in the Web Inspector | |
| Make the ResourceTreeElement's "status" property a reload button in case we're | |
| dealing with the main resource of the main frame. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/Reload.pdf: Removed. | |
| * UserInterface/Images/Reload.svg: Added. | |
| * UserInterface/Images/ReloadSelected.svg: Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/ResourceTreeElement.css: | |
| (.item.resource-type-document > .status > .reload-button): | |
| (.item.resource-type-document.selected > .status > .reload-button): | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype.get reloadButton): | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): | |
| (WebInspector.ResourceTreeElement.prototype._updateStatus): | |
| (WebInspector.ResourceTreeElement.prototype._reloadPageClicked): | |
| 2013-02-15 Joseph Pecoraro <pecoraro@apple.com> | |
| Double clicking the disclosure triangle for a TreeElement should not | |
| trigger the ondblclick for the element. | |
| This will be more possible once we add SourceMaps, but it is currently | |
| possible right now with the Main Resource's disclosure triangle. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.treeElementDoubleClicked): | |
| 2013-02-15 Joseph Pecoraro <pecoraro@apple.com> | |
| We don't need to check the entire string when we mean to check just the | |
| first character. Convert an indexOf to charAt(0). | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype._shouldGroupIntoFolders): | |
| 2013-02-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13226395> Multiline console.asserts in ResourceSidebarPanel.js not getting stripped | |
| Reviewed by Timothy Hatcher. | |
| * Scripts/remove-console-asserts.pl: | |
| For safety, keep the script reading line by line and warn if there is | |
| a console.assert that was not stripped. This almost always means the | |
| assert spanned multiple lines. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| Converted multi-line asserts to a single line. | |
| 2013-02-15 Joseph Pecoraro <pecoraro@apple.com> | |
| Manually running remove-console-asserts.pl was failing on rename. | |
| Change instead to File::move from the File::copy module and | |
| report errors if they happen. | |
| Reviewed by Timothy Hatcher. | |
| * Scripts/remove-console-asserts.pl: | |
| 2013-02-15 Timothy Hatcher <timothy@apple.com> | |
| Fix exceptions caused by my earlier InspectorBackendCommands change. | |
| Unreviewed. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemsCleared): Call | |
| updateDOMStorage instead of domStorageUpdated. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemRemoved): Ditto. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemAdded): Ditto. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemUpdated): Ditto. | |
| 2013-02-15 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-02-15 Timothy Hatcher <timothy@apple.com> | |
| Update InspectorBackendCommands.js for the latest protocol changes. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSObserver.js: | |
| (WebInspector.CSSObserver.prototype.styleSheetAdded): Added. | |
| (WebInspector.CSSObserver.prototype.styleSheetRemoved): Added. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype._deleteCallback): Pass both domain and url. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Renamed from domStorageUpdated. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemsCleared): Added. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemRemoved): Added. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemAdded): Added. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageItemUpdated): Added. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype.highlightDOMNode): Use invoke since the argument | |
| order changed and objectId is an optional argument we don't use. | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype.reportProtocolError): Log the whole error, not just the message. | |
| * UserInterface/InspectorBackendCommands.js: Updated from OpenSource r142992. | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.detached): Added. | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.prototype.javascriptDialogOpening): Added. | |
| (WebInspector.PageObserver.prototype.javascriptDialogClosed): Added. | |
| (WebInspector.PageObserver.prototype.scriptsEnabled): Added. | |
| 2013-02-15 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13207008> Allow toggling showing shadow trees with a button in the DOM Tree navigation bar | |
| We do a few things in this patch: | |
| 1. We move the existing compositing borders navigation item from | |
| FrameContentView to DOMTreeContentView. | |
| 2. We add a new navigation item on DOMTreeContentView to toggle | |
| shadow tree DOM nodes. | |
| 3. We make ClusterContentView return its current content view's | |
| navigation items in the navigationItems accessor since otherwise | |
| the DOMTreeContentView navigation items wouldn't get picked up. | |
| 4. We add a new event to notify when a ContentView's navigation | |
| items have changed so that they may be picked up by the ContentBrowser. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.get navigationItems): | |
| (WebInspector.ClusterContentView.prototype._currentContentViewDidChange): | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype._contentViewNavigationItemsDidChange): | |
| * UserInterface/ContentView.js: | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): | |
| (WebInspector.DOMTreeContentView.prototype.get navigationItems): | |
| (WebInspector.DOMTreeContentView.prototype.shown): | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked): | |
| (WebInspector.DOMTreeContentView.prototype._toggleCompositingBorders): | |
| (WebInspector.DOMTreeContentView.prototype._updateCompositingBordersButtonToMatchPageSettings): | |
| (WebInspector.DOMTreeContentView.prototype._showShadowDOMSettingChanged): | |
| (WebInspector.DOMTreeContentView.prototype._toggleShowsShadowDOMSetting): | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.shown): | |
| (WebInspector.FrameContentView.prototype._pathComponentSelected): | |
| * UserInterface/Images/ShadowDOM.pdf: Added. | |
| 2013-02-15 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13026376> Layers sidebar panel should show layers associated with any descendant node | |
| Use the DOM hierarchy to compile a list of layers associated with any | |
| descendant of the node passed to LayerTreeManager's layersForNode() | |
| method. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LayerTreeManager.js: | |
| (WebInspector.LayerTreeManager.prototype.get flatLayerTree): New getter | |
| to make it much easier to debug issues with the LayerTreeManager so we | |
| get the flat list of all known layers from the console. | |
| (WebInspector.LayerTreeManager.prototype.layersForNode): | |
| (WebInspector.LayerTreeManager.prototype.): | |
| (WebInspector.LayerTreeManager.prototype._flattenedLayerTree): | |
| (WebInspector.LayerTreeManager.prototype._obtainNodeIdsForLayerIds): | |
| (WebInspector.LayerTreeManager.prototype._layersForDescendantsOfNode): | |
| 2013-02-15 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13223597> Dashboard resources size may be only partial | |
| Wait until we've gotten an event indicating we're loading the main | |
| resource to start tracking sizes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager): | |
| (WebInspector.DashboardManager.prototype._mainResourceDidChange): | |
| (WebInspector.DashboardManager.prototype._startUpdatingTime): | |
| 2013-02-15 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13217869> Dashboard: LCD timer does not update when going back/forward | |
| Don't forget to kill any previously running timer when a new page loads | |
| and reset the time reported in the dashboard to 0 before starting the | |
| new timer. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager.prototype._mainResourceDidChange): | |
| 2013-02-15 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13207017> Nodes hosted in shadow trees should not be disregarded when "show-shadow-dom" setting is off | |
| We used to only deal with the "show-shadow-dom" setting as immutable and | |
| would simply not create DOMNodes for payloads with shadow roots in case | |
| the setting was false (the default). However, we would run in a situation | |
| where the backend could push nodes that were part of a shadow tree, | |
| regardless of the setting, and the parentId for the node would not be | |
| referenced in the DOMTreeManager's _idToDOMNode map which would eventually | |
| yield an error when handling setChildNodes payloads and break any further | |
| DOM interaction in the inspector. This kind of case happened quite often | |
| when the LayerTreeManager would get composted layers that were part of | |
| an <input> element, <video> element, etc. | |
| We now switch to a system where the "show-shadow-dom" setting can be changed | |
| at any time and we reflect the correct state in the DOMTreeOutline. Since | |
| the DOMTreeOutline bases its representation on the data represented by | |
| DOMNode instances, we make the "firstChild", "lastChild", "previousSibling", | |
| "nextSibling" and "children" properties getters and dynamically check whether | |
| child nodes hosted in shadow roots should be ignored. | |
| We only build the filtered children list in the case where we shouldn't | |
| show shadow roots and we've identified through a call to _renumber() that | |
| the filtered list needed updating. The filtered list is then cached until | |
| the next time it needs updating. | |
| We also make the "childNodeCount" property use a getter / setter as it was | |
| being accessed using the ivar from outside the DOMNode class and it would | |
| not reflect whether shadow roots should be reported as children. | |
| Then, we move the setting to be a shared setting on the global WebInspector | |
| object and track changes to it, updating all nodes in the DOMTreeOutline | |
| when the change happens. | |
| Further fixes will ensure we refresh the layer tree when the setting changes, | |
| and teach the LayerTreeManager to ignore layers attached to nodes in shadow | |
| roots when the setting is to hide shadow nodes. Another fix will be to provide | |
| a button to toggle that setting in the DOM tree's navigation bar in lieu of | |
| a contextual menu item. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): | |
| (WebInspector.DOMNode.prototype.get firstChild): | |
| (WebInspector.DOMNode.prototype.get lastChild): | |
| (WebInspector.DOMNode.prototype.get nextSibling): | |
| (WebInspector.DOMNode.prototype.get previousSibling): | |
| (WebInspector.DOMNode.prototype.get childNodeCount): | |
| (WebInspector.DOMNode.prototype.set childNodeCount): | |
| (WebInspector.DOMNode.prototype.hasChildNodes): | |
| (WebInspector.DOMNode.prototype.hasShadowRoots): | |
| (WebInspector.DOMNode.prototype._insertChild): | |
| (WebInspector.DOMNode.prototype._removeChild): | |
| (WebInspector.DOMNode.prototype._setChildrenPayload): | |
| (WebInspector.DOMNode.prototype._renumber): | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.handleLoadAllChildren): | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._childNodeCountUpdated): | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): | |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): | |
| (WebInspector.DOMTreeOutline.prototype._toggleShowShadowDOM): | |
| (WebInspector.DOMTreeOutline.prototype._showShadowDOMSettingChanged): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2013-02-14 Timothy Hatcher <timothy@apple.com> | |
| Switch to the new flexbox model for significantly faster layout times. | |
| <rdar://problem/13206930> REGRESSION: Layout time in the Web Inspector | |
| is 1.21x longer compared to Safari 6 | |
| Reviewed by Simon Fraser. | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.SuggestBox.prototype._updateBoxPosition): Make sure to absolute position | |
| the element when measuring in the body to avoid flexbox layout. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): Use updateLayout instead | |
| of updateLayoutSoon. Delaying the layout causes a visual flash of wrapped items. | |
| * UserInterface/ButtonToolbarItem.css: Replaced -webkit-box with -webkit-flex. | |
| Replaced -webkit-box-flex with -webkit-flex. Replaced -webkit-box-orient: vertical | |
| with -webkit-flex-direction: column. Replaced -webkit-box-orient: horizontal with | |
| -webkit-flex-direction: row. Replaced -webkit-box-align: center with -webkit-align-items: center. | |
| Replaced -webkit-box-pack: center with -webkit-justify-content: center. Replaced | |
| -webkit-box-pack: start with -webkit-justify-content: flex-start. Replaced -webkit-box-pack: end | |
| with -webkit-justify-content: flex-end. | |
| * UserInterface/ContentBrowser.css: Ditto. | |
| * UserInterface/ControlToolbarItem.css: Ditto. | |
| * UserInterface/DashboardView.css: Ditto. | |
| * UserInterface/FilterBar.css: Ditto. | |
| * UserInterface/FlexibleSpaceNavigationItem.css: Ditto. | |
| * UserInterface/FontResourceContentView.css: Ditto. | |
| * UserInterface/ImageResourceContentView.css: Ditto. | |
| * UserInterface/LayerTreeSidebarPanel.css: Ditto. | |
| * UserInterface/Main.css: Ditto. | |
| * UserInterface/NavigationSidebarPanel.css: Ditto. | |
| * UserInterface/Popover.css: Ditto. | |
| * UserInterface/QuickConsole.css: Ditto. | |
| * UserInterface/ResourceSidebarPanel.css: Ditto. | |
| * UserInterface/Toolbar.css: Ditto. | |
| * UserInterface/HierarchicalPathComponent.css: Ditto. | |
| Plus added min-width: 0 in a couple places to get proper shrinking. | |
| * UserInterface/NavigationBar.css: Ditto. | |
| Plus added -webkit-flex-wrap: wrap in a couple places to get proper measuring in JavaScript. | |
| 2013-02-14 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13200858> Popovers can draw their background twice | |
| Since the canvas context may be the very same context across | |
| presentations of the popover, ensure that we restore the default | |
| state after we're done drawing so that the previous clip path | |
| is removed. | |
| We also clear the drawing region so that we don't get remnants | |
| of the previously drawn frame in case the frame size is the same | |
| as for the previous popover presentation. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover.prototype._drawBackground): | |
| 2013-02-14 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13192982> Debugger popovers should line-up arrow to match hovered token | |
| Use the token's bounds rather than the expression's bounds | |
| to present the popover. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._checkHoveredToken): | |
| 2013-02-14 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13209159> Dashboard load timer starts over when recording in the Timeline manually | |
| Instead of starting the timer upon starting recording the timeline, use the | |
| WebInspector.Frame.Event.MainResourceDidChange event to track load of the | |
| main frame only since it's the load of the main frame that we're showing | |
| the time for in the dashboard. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DashboardManager.js: | |
| (WebInspector.DashboardManager): | |
| (WebInspector.DashboardManager.prototype._mainResourceDidChange): | |
| 2013-02-13 Timothy Hatcher <timothy@apple.com> | |
| Don't fire WebInspector.QuickConsole.Event.DidResize if nothing changed. | |
| Part of: <rdar://problem/12745890> Autocomplete slows down my typing in the Web Inspector console while debugging | |
| Reviewed by Antoine Quint. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._updateSize): Only change the style and fire the event | |
| if the height of the toolbar or element changed. | |
| 2013-02-12 Timothy Hatcher <timothy@apple.com> | |
| Speed up selection of deeply nested DOM nodes. | |
| <rdar://problem/13201584> UI updates after selecting elements is very slow | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout): Remove a offsetWidth | |
| from a loop that also sets style info. | |
| 2013-02-12 Timothy Hatcher <timothy@apple.com> | |
| Treat an empty URL for frames as "about:blank" for the special empty page. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._createFrame): | |
| 2013-02-13 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13193125> Debugger popovers don't appear for boolean values | |
| Don't forget to handle boolean values for the debugger popover. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered.populate): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForBoolean): | |
| 2013-02-12 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| Reviewed by Cody Krieger. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Updated by the script. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add support for computed style. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.set text): Return early if not editable. | |
| (WebInspector.CSSProperty.prototype.set name): Ditto. | |
| (WebInspector.CSSProperty.prototype.get canonicalName): Use CSSStyleManager.canonicalNameForPropertyName. | |
| (WebInspector.CSSProperty.prototype.set value): Return early if not editable. | |
| (WebInspector.CSSProperty.prototype.set priority): Ditto. | |
| (WebInspector.CSSProperty.prototype.set enabled): Ditto. | |
| (WebInspector.CSSProperty.prototype.add): Ditto. | |
| (WebInspector.CSSProperty.prototype.remove): Ditto. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration): | |
| (WebInspector.CSSStyleDeclaration.prototype.get editable): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.update): Store the property in a map if we aren't editable. | |
| (WebInspector.CSSStyleDeclaration.prototype.addProperty): Return early if not editable. | |
| (WebInspector.CSSStyleDeclaration.prototype.removeProperty): Ditto. | |
| (WebInspector.CSSStyleDeclaration.prototype.propertyForName): Use property map if not editable. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.canonicalNameForPropertyName): Added. Moved from CSSProperty. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedComputedStyle): Added. Moved the finish here. | |
| (WebInspector.DOMNodeStyles.prototype.get computedStyle): Added. | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Handle NaN index better. | |
| (WebInspector.DOMNodeStyles.prototype._updateStyleCascade): Use an external effective property map for | |
| the main element styles. | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): Use an external effective property map | |
| if one is passed in. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add support for editing rules, styles and properties. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.set index): Added. | |
| (WebInspector.CSSProperty.prototype.update): Delete the pending properties. | |
| (WebInspector.CSSProperty.prototype.get text): Use the getters to get the pending values. | |
| (WebInspector.CSSProperty.prototype.set text): Added. | |
| (WebInspector.CSSProperty.prototype.get name): Return _pendingName if index is NaN. | |
| (WebInspector.CSSProperty.prototype.set name): Added. | |
| (WebInspector.CSSProperty.prototype.get value): Return _pendingValue if index is NaN. | |
| (WebInspector.CSSProperty.prototype.set value): Added. | |
| (WebInspector.CSSProperty.prototype.get important): Use priority getter. | |
| (WebInspector.CSSProperty.prototype.set important): Added. | |
| (WebInspector.CSSProperty.prototype.get priority): Return _pendingPriority if index is NaN. | |
| (WebInspector.CSSProperty.prototype.set priority): Added. | |
| (WebInspector.CSSProperty.prototype.get enabled): Check ownerStyle and index too. | |
| (WebInspector.CSSProperty.prototype.set enabled): Added. | |
| (WebInspector.CSSProperty.prototype.add): Added. | |
| (WebInspector.CSSProperty.prototype.remove): Added. | |
| (WebInspector.CSSProperty.prototype._updatePropertySoon): Added. | |
| (WebInspector.CSSProperty.prototype._updatePropertySoon.performUpdate): Added. | |
| (WebInspector.CSSProperty.prototype._cancelPendingUpdate): Added. | |
| * UserInterface/CSSRule.js: | |
| (WebInspector.CSSRule.prototype.set selectorText): Added. | |
| (WebInspector.CSSRule.prototype.set selectors): Added. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration): | |
| (WebInspector.CSSStyleDeclaration.prototype.update): Don't set ownerStyle to null anymore | |
| since we reuse properties and want them associated still. | |
| (WebInspector.CSSStyleDeclaration.prototype.set text): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.get pendingProperties): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.propertyForName): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.propertyForName.findMatch): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.addProperty): Added. | |
| (WebInspector.CSSStyleDeclaration.prototype.removeProperty): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.ruleSelectorChanged): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changeRuleSelector): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changeStyleText.fetchedStyleSheetContent): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changeProperty): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changePropertyText): Added. | |
| (WebInspector.DOMNodeStyles.prototype.changePropertyEnabledState): Added. | |
| (WebInspector.DOMNodeStyles.prototype.addProperty): Added. | |
| (WebInspector.DOMNodeStyles.prototype.removeProperty): Added. | |
| (WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Added. | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): Reuse pending properties. | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): Ignore stylesheets we know | |
| we just changed. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Mark overridden properties and associate shorthand to longhand properties. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.update): | |
| (WebInspector.CSSProperty.prototype.get canonicalName): Added. | |
| (WebInspector.CSSProperty.prototype.get canonicalName.canonicalPropertyName): Added. | |
| (WebInspector.CSSProperty.prototype.set overridden): Added. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): Call _updateStyleCascade. | |
| (WebInspector.DOMNodeStyles.prototype._updateStyleCascade): Added. | |
| (WebInspector.DOMNodeStyles.prototype._collectStylesInCascadeOrder): Added. | |
| (WebInspector.DOMNodeStyles.prototype._markOverriddenProperties): Added. | |
| (WebInspector.DOMNodeStyles.prototype._associateRelatedProperties): Added. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Parse inherited rules, pseudo elements, inline style and attribute styles. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): Added maps and properties. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): Parse pseudoElementRulesPayload | |
| and inheritedRulesPayload. | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): Parse inlineStylePayload and | |
| attributesStylePayload. | |
| (WebInspector.DOMNodeStyles.prototype.get inheritedRules): Added. | |
| (WebInspector.DOMNodeStyles.prototype.get inlineStyle): Added. | |
| (WebInspector.DOMNodeStyles.prototype.get attributesStyle): Added. | |
| (WebInspector.DOMNodeStyles.prototype.get pseudoElements): Added. | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): Check inherited, | |
| inline, attributes and pseudo elements. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.CSSStyleDeclaration and WebInspector.CSSProperty and have DOMNodeStyles parse and create them. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: Added. | |
| (WebInspector.CSSProperty): | |
| (WebInspector.CSSProperty.prototype.get ownerStyle): | |
| (WebInspector.CSSProperty.prototype.set ownerStyle): | |
| (WebInspector.CSSProperty.prototype.get index): | |
| (WebInspector.CSSProperty.prototype.update): | |
| (WebInspector.CSSProperty.prototype.get text): | |
| (WebInspector.CSSProperty.prototype.get name): | |
| (WebInspector.CSSProperty.prototype.get value): | |
| (WebInspector.CSSProperty.prototype.get important): | |
| (WebInspector.CSSProperty.prototype.get priority): | |
| (WebInspector.CSSProperty.prototype.get enabled): | |
| (WebInspector.CSSProperty.prototype.get overridden): | |
| (WebInspector.CSSProperty.prototype.get implicit): | |
| (WebInspector.CSSProperty.prototype.get valid): | |
| (WebInspector.CSSProperty.prototype.get startStyleSheetTextPosition): | |
| (WebInspector.CSSProperty.prototype.get endStyleSheetTextPosition): | |
| (WebInspector.CSSProperty.prototype.get relatedShorthandProperty): | |
| (WebInspector.CSSProperty.prototype.set relatedShorthandProperty): | |
| (WebInspector.CSSProperty.prototype.get relatedLonghandProperties): | |
| (WebInspector.CSSProperty.prototype.addRelatedLonghandProperty): | |
| (WebInspector.CSSProperty.prototype.clearRelatedLonghandProperties): | |
| (WebInspector.CSSProperty.prototype.isActive): | |
| * UserInterface/CSSStyleDeclaration.js: Added. | |
| (WebInspector.CSSStyleDeclaration): | |
| (WebInspector.CSSStyleDeclaration.prototype.get id): | |
| (WebInspector.CSSStyleDeclaration.prototype.get ownerStyleSheet): | |
| (WebInspector.CSSStyleDeclaration.prototype.get type): | |
| (WebInspector.CSSStyleDeclaration.prototype.get inherited): | |
| (WebInspector.CSSStyleDeclaration.prototype.update): | |
| (WebInspector.CSSStyleDeclaration.prototype.get ownerRule): | |
| (WebInspector.CSSStyleDeclaration.prototype.set ownerRule): | |
| (WebInspector.CSSStyleDeclaration.prototype.get text): | |
| (WebInspector.CSSStyleDeclaration.prototype.get properties): | |
| (WebInspector.CSSStyleDeclaration.prototype.get startStyleSheetTextPosition): | |
| (WebInspector.CSSStyleDeclaration.prototype.get endStyleSheetTextPosition): | |
| (WebInspector.CSSStyleDeclaration.prototype.get nodeStyles): | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): | |
| (WebInspector.DOMNodeStyles.prototype._parseStylePropertyPayload): | |
| (WebInspector.DOMNodeStyles.prototype._parseStyleDeclarationPayload): | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| * UserInterface/Main.html: | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.CSSRule and WebInspector.CSSMedia and have DOMNodeStyles parse and create them. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSMedia.js: Added. | |
| (WebInspector.CSSMedia): | |
| (WebInspector.CSSMedia.prototype.get type): | |
| (WebInspector.CSSMedia.prototype.get text): | |
| (WebInspector.CSSMedia.prototype.get sourceCodeLocation): | |
| * UserInterface/CSSRule.js: Added. | |
| (WebInspector.CSSRule): | |
| (WebInspector.CSSRule.prototype.get id): | |
| (WebInspector.CSSRule.prototype.get ownerStyleSheet): | |
| (WebInspector.CSSRule.prototype.update): | |
| (WebInspector.CSSRule.prototype.get type): | |
| (WebInspector.CSSRule.prototype.get sourceCodeLocation): | |
| (WebInspector.CSSRule.prototype.get selectorText): | |
| (WebInspector.CSSRule.prototype.get selectors): | |
| (WebInspector.CSSRule.prototype.get matchedSelectorIndices): | |
| (WebInspector.CSSRule.prototype.get style): | |
| (WebInspector.CSSRule.prototype.get mediaList): | |
| (WebInspector.CSSRule.prototype.get nodeStyles): | |
| * UserInterface/DOMNodeStyles.js: | |
| (WebInspector.DOMNodeStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.parseRuleMatchArrayPayload): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| (WebInspector.DOMNodeStyles.prototype.get matchedRules): | |
| (WebInspector.DOMNodeStyles.prototype._identifierToString): | |
| (WebInspector.DOMNodeStyles.prototype._createSourceCodeLocation): | |
| (WebInspector.DOMNodeStyles.prototype._parseRulePayload): | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange.markAsNeedsRefresh): | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange.checkRules): | |
| (WebInspector.DOMNodeStyles.prototype._styleSheetContentDidChange): | |
| * UserInterface/Main.html: | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DOMNodeStyles, a new class to inspect and manage styles for a node. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): Added _nodeStylesMap. | |
| (WebInspector.CSSStyleManager.prototype.stylesForNode): Added. | |
| (WebInspector.CSSStyleManager.prototype._mainResourceDidChange): Clear _nodeStylesMap. | |
| * UserInterface/DOMNodeStyles.js: Added. | |
| (WebInspector.DOMNodeStyles): | |
| (WebInspector.DOMNodeStyles.prototype.get node): | |
| (WebInspector.DOMNodeStyles.prototype.refreshIfNeeded): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedMatchedStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh.fetchedInlineStyles): | |
| (WebInspector.DOMNodeStyles.prototype.refresh): | |
| * UserInterface/Main.html: Added DOMNodeStyles.js. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.CSSStyleSheet and start using it. | |
| This replaces a collection of maps and content updating functions in CSSStyleManager | |
| with a proper SourceCode subclass that manages its info, content and works with branches. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow): Listen for the change event on CSSStyleSheet. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Ditto. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): Added event listeners for resources. | |
| (WebInspector.CSSStyleManager.prototype.styleSheetForIdentifier): Added. | |
| (WebInspector.CSSStyleManager.prototype.styleSheetChanged): Call noteContentDidChange and | |
| _updateResourceContent. | |
| (WebInspector.CSSStyleManager.prototype._mainResourceDidChange): Added. Clear the maps when the | |
| main frame navigates. | |
| (WebInspector.CSSStyleManager.prototype._resourceAdded): Added. Call _clearStyleSheetsForResource. | |
| (WebInspector.CSSStyleManager.prototype._resourceTypeDidChange): Ditto. | |
| (WebInspector.CSSStyleManager.prototype._clearStyleSheetsForResource): Added. | |
| (WebInspector.CSSStyleManager.prototype._frameURLMapKey): Added. | |
| (WebInspector.CSSStyleManager.prototype._lookupStyleSheetForResource.syleSheetsFetched): Use | |
| _styleSheetFrameURLMap instead of _styleSheetInfoMap. | |
| (WebInspector.CSSStyleManager.prototype._setContentForStyleSheetIdentifier): Removed. | |
| (WebInspector.CSSStyleManager.prototype._lookupStyleSheet): Updated function names. | |
| (WebInspector.CSSStyleManager.prototype._fetchInfoForAllStyleSheets): Ditto. | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange.applyStyleSheetChanges.styleSheetFound): | |
| Use SourceCodeRevision to update the stylesheet content. | |
| (WebInspector.CSSStyleManager.prototype._updateResourceContent): Added. | |
| (WebInspector.CSSStyleManager.prototype._updateResourceContent.fetchedStyleSheetContent): Added. | |
| (WebInspector.CSSStyleManager.prototype._updateResourceContent.styleSheetReady): Added. | |
| (WebInspector.CSSStyleManager.prototype._updateResourceContent.applyStyleSheetChanges): Added. | |
| * UserInterface/CSSStyleSheet.js: Added. | |
| (WebInspector.CSSStyleSheet): | |
| (WebInspector.CSSStyleSheet.resetUniqueDisplayNameNumbers): | |
| (WebInspector.CSSStyleSheet.prototype.get id): | |
| (WebInspector.CSSStyleSheet.prototype.get parentFrame): | |
| (WebInspector.CSSStyleSheet.prototype.get url): | |
| (WebInspector.CSSStyleSheet.prototype.get urlComponents): | |
| (WebInspector.CSSStyleSheet.prototype.get displayName): | |
| (WebInspector.CSSStyleSheet.prototype.updateInfo): | |
| (WebInspector.CSSStyleSheet.prototype.get revisionForRequestedContent): | |
| (WebInspector.CSSStyleSheet.prototype.handleCurrentRevisionContentChange.contentDidChange): | |
| (WebInspector.CSSStyleSheet.prototype.handleCurrentRevisionContentChange): | |
| (WebInspector.CSSStyleSheet.prototype.canRequestContentFromBackend): | |
| (WebInspector.CSSStyleSheet.prototype.requestContentFromBackend): | |
| (WebInspector.CSSStyleSheet.prototype.noteContentDidChange): | |
| * UserInterface/Main.html: Added CSSStyleSheet.js. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.revisionContentDidChange): Call handleCurrentRevisionContentChange. | |
| (WebInspector.SourceCode.prototype.handleCurrentRevisionContentChange): Added. | |
| (WebInspector.SourceCode.prototype.get revisionForRequestedContent): Added. | |
| (WebInspector.SourceCode.prototype.markContentAsStale): Added. | |
| (WebInspector.SourceCode.prototype._processContent): Use revisionForRequestedContent. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Remove noteStyleSheetChanged and use the styleSheetChanged backend event. | |
| The backend already tells us when a stylesheet changes, so we should use it | |
| instead of trying to fire the event when we think it should. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSObserver.js: | |
| (WebInspector.CSSObserver.prototype.styleSheetChanged): Call CSSStyleManager. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.mediaQueryResultChanged): Moved to the top. | |
| (WebInspector.CSSStyleManager.prototype.styleSheetChanged): Added. | |
| (WebInspector.CSSStyleManager.prototype.noteStyleSheetChanged): Removed. | |
| * UserInterface/OldCSSProperty.js: | |
| (WebInspector.OldCSSProperty.prototype.callback): Removed call to noteStyleSheetChanged. | |
| (WebInspector.OldCSSProperty.prototype.setText): Ditto. | |
| (WebInspector.OldCSSProperty.prototype.setDisabled): Ditto. | |
| * UserInterface/OldCSSStyleDeclaration.js: | |
| (WebInspector.OldCSSStyleDeclaration.prototype.insertPropertyAt): Removed call to noteStyleSheetChanged. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Create mappings between shorthand and longhand property names. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions): Create the mappings. | |
| (WebInspector.CSSCompletions.prototype.longhandsForShorthand): Added. | |
| (WebInspector.CSSCompletions.prototype.shorthandsForLonghand): Added. | |
| 2013-02-11 Timothy Hatcher <timothy@apple.com> | |
| Rename current CSS model classes to have "Old" prefixes. | |
| This is in preparation for a new and improved CSS model classes. | |
| <rdar://problem/7206272&12526319> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.parseRuleArrayPayload): | |
| (WebInspector.CSSStyleManager.prototype.): | |
| (WebInspector.CSSStyleManager.prototype.getMatchedStylesAsync): | |
| (WebInspector.CSSStyleManager.prototype.getComputedStyleAsync): | |
| (WebInspector.CSSStyleManager.prototype.getInlineStylesAsync): | |
| * UserInterface/Main.html: | |
| * UserInterface/OldCSSMedia.js: Renamed from WebInspector/UserInterface/CSSMedia.js. | |
| * UserInterface/OldCSSProperty.js: Renamed from WebInspector/UserInterface/CSSProperty.js. | |
| * UserInterface/OldCSSRule.js: Renamed from WebInspector/UserInterface/CSSRule.js. | |
| * UserInterface/OldCSSStyleDeclaration.js: Renamed from WebInspector/UserInterface/CSSStyleDeclaration.js. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): | |
| (WebInspector.StylePropertiesSection.prototype.onpopulate): | |
| 2013-02-12 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11053300> Profile recording button falsely indicates "recording" if started and then page navigates or refreshes | |
| We now correctly keep the recording state across a page reload, | |
| only resetting it, as well as removing any previous profile, when | |
| we navigate away from the current page. | |
| To do so, we alert the sidebar panel when a profile is interrupted | |
| such that any old tree item for this profile is pruned and the | |
| state of the profile recording button is updated to match that of | |
| the profiler. Additionally, when the main frame is refreshed, we | |
| attempt to resume profiling by looking for existing, though stale, | |
| profile objects, and creating a new one as needed. In cases where | |
| we navigate to a new frame, the "Cleared" event is dispatched and | |
| the sidebar panel empties itself. | |
| Finally, we ensure that the number set for the profile's title | |
| reflects the current list of profiles of this type and that any | |
| selected CSS profile's content view is hidden if the profile list | |
| is cleared. | |
| Note that profiles that were recorded prior to the current load | |
| will show an empty content view unless they had also been selected | |
| prior to a subsequent load. This is a known issue and will be fixed | |
| with a followup task. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingInterrupted): | |
| (WebInspector.InstrumentSidebarPanel.prototype._titleForProfile): | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilesCleared): | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.initialize): | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): | |
| (WebInspector.ProfileManager.prototype._mainResourceDidChange): | |
| (WebInspector.ProfileManager.prototype._checkForInterruptions): | |
| (WebInspector.ProfileManager.prototype._attemptToResumeProfiling): | |
| 2013-02-12 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13171934> Control+click on toolbar doesn't bring up toolbar context menu items | |
| Don't do any custom handling of mousedown events on the toolbar if | |
| the control key was pressed. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector._toolbarMouseDown): | |
| 2013-02-11 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/10854712> REGRESSION (Safari 6): It's hard to see at a glance if a page has any JS/HTML errors/warnings | |
| We add a new DashboardManager singleton which taps into events exposed | |
| by other managers and classes in order to monitor resources, timeline | |
| records and console messages and display the respective counts in a | |
| DashboardView. The DashboardView knows how to lay itself out in the | |
| various toolbar modes and lets the user jump to various parts of the | |
| inspector upon clicking its outlets, while providing useful information | |
| as the user hovers over the item with the mouse. | |
| Reviewed by Timothy Hatcher and Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/DashboardManager.js: Added. | |
| (WebInspector.DashboardManager): | |
| (WebInspector.DashboardManager.prototype._resourceWasAdded): | |
| (WebInspector.DashboardManager.prototype._resourcesWereCleared): | |
| (WebInspector.DashboardManager.prototype._frameWasAdded): | |
| (WebInspector.DashboardManager.prototype._resourceSizeDidChange): | |
| (WebInspector.DashboardManager.prototype._timelineRecordingStarted): | |
| (WebInspector.DashboardManager.prototype._updateTime): | |
| (WebInspector.DashboardManager.prototype._consoleMessageAdded): | |
| (WebInspector.DashboardManager.prototype._consoleMessageWasRepeated): | |
| (WebInspector.DashboardManager.prototype._incrementConsoleMessageType): | |
| (WebInspector.DashboardManager.prototype._consoleWasCleared): | |
| * UserInterface/DashboardView.css: Added. | |
| (.dashboard): | |
| (.dashboard > .item): | |
| (.dashboard > .item > *): | |
| (.dashboard > .item > img): | |
| (.dashboard > .item.enabled > img): | |
| (.dashboard > .item.enabled:hover > img): | |
| (.dashboard > .item > div): | |
| (.dashboard > .item.issues > div > div): | |
| (.dashboard > .item.enabled > div): | |
| (.dashboard > .item.enabled:hover > div): | |
| (.dashboard > .resources > img): | |
| (.dashboard > .time > img): | |
| (.dashboard > .logs > img): | |
| (.dashboard > .memory > img): | |
| (.dashboard > .errors > img): | |
| (.dashboard > .errors.enabled > img): | |
| (.dashboard > .errors.enabled:hover > img): | |
| (.dashboard > .errors.enabled > div): | |
| (.dashboard > .errors.enabled:hover > div): | |
| (.dashboard > .issues > img): | |
| (.dashboard > .issues.enabled > img): | |
| (.dashboard > .issues.enabled:hover > img): | |
| (.dashboard > .issues.enabled > div): | |
| (.dashboard > .issues.enabled:hover > div): | |
| (.toolbar.normal-size.icon-and-label-horizontal > .item-section > .dashboard): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .item): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .resources): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .time): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .logs): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .memory): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .errors): | |
| (.toolbar.small-size.icon-and-label-vertical > .item-section > .dashboard > .issues): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .item): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .resources): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .time): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .logs): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .memory): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .errors): | |
| (.toolbar.normal-size.icon-and-label-vertical > .item-section > .dashboard > .issues): | |
| * UserInterface/DashboardView.js: Added. | |
| (WebInspector.DashboardView): | |
| (WebInspector.DashboardView.prototype.get logs): | |
| (WebInspector.DashboardView.prototype.set logs): | |
| (WebInspector.DashboardView.prototype.get issues): | |
| (WebInspector.DashboardView.prototype.set issues): | |
| (WebInspector.DashboardView.prototype.get errors): | |
| (WebInspector.DashboardView.prototype.set errors): | |
| (WebInspector.DashboardView.prototype.set memory): | |
| (WebInspector.DashboardView.prototype.set time): | |
| (WebInspector.DashboardView.prototype.get resourcesCount): | |
| (WebInspector.DashboardView.prototype.set resourcesCount): | |
| (WebInspector.DashboardView.prototype.get resourcesSize): | |
| (WebInspector.DashboardView.prototype.set resourcesSize): | |
| (WebInspector.DashboardView.prototype._appendElementForNamedItem): | |
| (WebInspector.DashboardView.prototype._itemWasClicked): | |
| (WebInspector.DashboardView.prototype._resourcesWasClicked): | |
| (WebInspector.DashboardView.prototype._timeWasClicked): | |
| (WebInspector.DashboardView.prototype._consoleItemWasClicked): | |
| (WebInspector.DashboardView.prototype._updateResourcesOutlet): | |
| (WebInspector.DashboardView.prototype._setItemEnabled): | |
| * UserInterface/Images/Errors.svg: Added. | |
| * UserInterface/Images/ErrorsEnabled.svg: Added. | |
| * UserInterface/Images/Issues.svg: Added. | |
| * UserInterface/Images/IssuesEnabled.svg: Added. | |
| * UserInterface/Images/Logs.svg: Added. | |
| * UserInterface/Images/Memory.svg: Added. | |
| * UserInterface/Images/Resources.svg: Added. | |
| * UserInterface/Images/Time.svg: Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.increaseSize): | |
| 2013-02-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13184288> REGRESSION: Undo / Redo no longer works in QuickConsole | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/KeyboardShortcut.js: | |
| (WebInspector.KeyboardShortcut): | |
| (WebInspector.KeyboardShortcut._handleKeyDown): | |
| (WebInspector.KeyboardShortcut.prototype.get implicitlyPreventsDefault): | |
| (WebInspector.KeyboardShortcut.prototype.set implicitlyPreventsDefault): | |
| By default keyboard shortcuts prevent default. Allow the KeyboardShortcut | |
| to opt out of implicitly preventing default. That way a keyboard shortcut | |
| can be added that does not prevent default. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| The undo and redo keyboard shortcuts will not implicitly prevent default. | |
| (WebInspector._undoKeyboardShortcut): | |
| (WebInspector._redoKeyboardShortcut): | |
| Do not trigger WebInspector.undo or redo if the key event triggered | |
| while in a text field. Instead let the event bubble to get default | |
| text editing behavior. | |
| 2013-02-08 Timothy Hatcher <timothy@apple.com> | |
| Only record the load event time for the main frame. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Check the frameId against the | |
| mainFrame's id before setting _loadEventTime. | |
| 2013-02-07 Timothy Hatcher <timothy@apple.com> | |
| Make CSS autocompletion work again when editing a property. | |
| <rdar://problem/13058573> REGRESSION: CSS autocompletion broken after OpenSource r123612 | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: | |
| (WebInspector.CSSCompletions): Support the change in format of values. | |
| 2013-02-07 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13162142> Contextual menu items on the toolbar are missing | |
| Pass the event when creating a ContextMenu object instead on calling show(). | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype._handleContextMenuEvent): | |
| 2013-02-07 Joseph Pecoraro <pecoraro@apple.com> | |
| Merge OpenSource r116305 to fix TextPrompt event listener and style leaks. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.prototype._attachInternal): | |
| (WebInspector.TextPrompt.prototype.detach): | |
| 2013-02-05 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11007445> PARITY (WebKit Web Inspector): Support Undo/Redo for DOM changes | |
| Wire up Cmd+Z and Cmd+Shift+Z keyboard shortcuts to call DOMAgent's | |
| undo() and redo() methods while marking DOM and CSS editing tasks | |
| as undoable via the DOMAgent's markUndoableState() method. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.callback): | |
| (WebInspector.CSSProperty.prototype.setText): | |
| (WebInspector.CSSProperty.prototype.setDisabled): | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.): | |
| (WebInspector.CSSStyleManager.prototype._setContentForStyleSheetIdentifier): | |
| (WebInspector.CSSStyleManager.prototype.callback): | |
| (WebInspector.CSSStyleManager.prototype.setRuleSelector): | |
| (WebInspector.CSSStyleManager.prototype.addRule): | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.setNodeName): | |
| (WebInspector.DOMNode.prototype.setNodeValue): | |
| (WebInspector.DOMNode.prototype.setAttribute): | |
| (WebInspector.DOMNode.prototype.setAttributeValue): | |
| (WebInspector.DOMNode.prototype.): | |
| (WebInspector.DOMNode.prototype.removeAttribute): | |
| (WebInspector.DOMNode.prototype.setOuterHTML): | |
| (WebInspector.DOMNode.prototype.removeNode): | |
| (WebInspector.DOMNode.prototype.moveTo): | |
| (WebInspector.DOMNode.prototype.setPseudoClassEnabled): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector.undo): | |
| (WebInspector.redo): | |
| 2013-02-05 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11133526> PARITY (WebKit Web Inspector): Ability to force pseudo state for an element is missing | |
| In order to show submenu items in contextual menus in the Web Inspector, we update ContextMenu.js | |
| to be the latest from OpenSource and update the way we use this API in our code so that the event | |
| is provided at construction time rather than when calling the .show() method. | |
| We also have to update the RWI-specific front-end host in order to recognize the new "subMenu" | |
| contextual menu item type and handle its items to show as a submenu item in the NSMenu we | |
| create. | |
| Then, we allow the possibility to enforce certain pseudo-classes on a DOMNode, which triggers | |
| a new event that the style and appearance panels listen to in order to refresh their display | |
| and account for any style changes that may result from a pseudo-class being forced. | |
| Finally, we add new menu items to the contextual menu of a DOM node in the inspector's DOM | |
| tree to allow to "Force CSS Pseudo-Classes". | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| * UserInterface/ContextMenu.js: | |
| (WebInspector.ContextMenuItem): | |
| (WebInspector.ContextMenuItem.prototype.id): | |
| (WebInspector.ContextMenuItem.prototype.type): | |
| (WebInspector.ContextMenuItem.prototype.isEnabled): | |
| (WebInspector.ContextMenuItem.prototype.setEnabled): | |
| (WebInspector.ContextMenuItem.prototype._buildDescriptor): | |
| (WebInspector.ContextSubMenuItem): | |
| (WebInspector.ContextSubMenuItem.prototype.appendItem): | |
| (WebInspector.ContextSubMenuItem.prototype.appendSubMenuItem): | |
| (WebInspector.ContextSubMenuItem.prototype.appendCheckboxItem): | |
| (WebInspector.ContextSubMenuItem.prototype.appendSeparator): | |
| (WebInspector.ContextSubMenuItem.prototype._pushItem): | |
| (WebInspector.ContextSubMenuItem.prototype.isEmpty): | |
| (WebInspector.ContextSubMenuItem.prototype._buildDescriptor): | |
| (WebInspector.ContextMenu): | |
| (WebInspector.ContextMenu.prototype.nextId): | |
| (WebInspector.ContextMenu.prototype.show): | |
| (WebInspector.ContextMenu.prototype.showSoftMenu): | |
| (WebInspector.ContextMenu.prototype._setHandler): | |
| (WebInspector.ContextMenu.prototype._buildDescriptor): | |
| (WebInspector.ContextMenu.prototype._itemSelected): | |
| (WebInspector.ContextMenu.prototype.appendApplicableItems): | |
| (WebInspector.ContextMenu.Provider): | |
| (WebInspector.ContextMenu.Provider.prototype.appendApplicableItems): | |
| (WebInspector.ContextMenu.registerProvider): | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): | |
| (WebInspector.DOMNode.prototype.isXMLNode): | |
| (WebInspector.DOMNode.prototype.get enabledPseudoClasses): | |
| (WebInspector.DOMNode.prototype.setPseudoClassEnabled): | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._populateTagContextMenu): | |
| (WebInspector.DOMTreeElement.prototype._populateForcedPseudoStateItems.string_appeared_here.forEach): | |
| (WebInspector.DOMTreeElement.prototype._populateForcedPseudoStateItems): | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired): | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._contextMenuInDataTable): | |
| * UserInterface/ObjectPropertiesSection.js: | |
| (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): | |
| (WebInspector.ObjectPropertyTreeElement.prototype._functionContextMenuEventFired): | |
| * UserInterface/Utilities.js: | |
| 2013-02-04 Jessie Berlin <jberlin@apple.com> | |
| Ran update-safari-localizable-strings. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2013-02-04 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13042270> Debugger should be smarter about hovered tokens | |
| When notifying that we're hovering a new token, keep going through | |
| previous tokens on the same line to find other expressions and . | |
| so that a full property chain can be resolved. The result is now | |
| stored in a new "fullExpression" property on the "hoveredToken" object. | |
| Additionally, the bounds of the token are now those of the full expression | |
| such that highlight is correct and the highlight-related APIs have been | |
| renamed to work within the context of an expression and not a token. | |
| While this patch doesn't handle expressions across several lines, it gets | |
| us to parity with what the OpenSource Web Inspector knows how to handle. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| (WebInspector.SourceCodeTextEditor.prototype.willDismissPopover): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.highlightHoveredExpression): | |
| (WebInspector.TextEditor.prototype.removeHighlightOnHoveredExpression): | |
| (WebInspector.TextEditor.prototype._mouseMovedOverEditor): | |
| (WebInspector.TextEditor.prototype._checkHoveredToken): | |
| 2013-02-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13137010> Console toggle split / full-height button is showing the wrong direction | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.shown): | |
| (WebInspector.LogContentView.prototype._toggleSplit): | |
| Always update the toggle button whenever the log content view is shown. | |
| * UserInterface/Main.js: | |
| (WebInspector.toggleSplitConsole): | |
| This no longer needs to return true or false, so clean it up. | |
| 2013-02-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/13137050> Clicking Console button in main toolbar should always toggle the console, even if no back history | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.toggleConsoleView): | |
| When toggling and there is no history, open the source code for the main resource. | |
| 2013-02-01 Timothy Hatcher <timothy@apple.com> | |
| Add the ability to resize the split console. | |
| Part of: <rdar://problem/13118771> Unify the quick console and full console | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.css: | |
| (#split-content-browser > .navigation-bar): Use row-resize cursor. | |
| (#split-content-browser > .navigation-bar .item:not(.flexible-space)): Use default cursor. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added height setting and event listener. Call _updateSplitConsoleHeight. | |
| (WebInspector._updateSplitConsoleHeight): Added. | |
| (WebInspector._consoleResizerMouseDown): Added. | |
| (WebInspector._consoleResizerMouseDown.dockedResizerDrag): Added. | |
| (WebInspector._consoleResizerMouseDown.dockedResizerDragEnd): Added. | |
| 2013-01-30 Timothy Hatcher <timothy@apple.com> | |
| Gut the old Quick Console except the prompt and make the Console view use the Quick Console prompt. | |
| Part of: <rdar://problem/13118771> Unify the quick console and full console | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Use the quick console prompt. Don't append a <br> now that the prompt | |
| isn't in the view. | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): Added. | |
| (WebInspector.LogContentView.prototype.promptDidChangeHeight): Added. | |
| * UserInterface/QuickConsole.css: Removed unused rules. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.updateLayout): Just call _updateSize. | |
| (WebInspector.QuickConsole.prototype._updateSize): Added. | |
| (WebInspector.QuickConsole.prototype._toggleOrFocus): Call WebInspector.toggleConsoleView. | |
| 2013-01-30 Timothy Hatcher <timothy@apple.com> | |
| Add the ability to show a second content browser at the bottom for the console view. | |
| Part of: <rdar://problem/13118771> Unify the quick console and full console | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.get element): Added. | |
| * UserInterface/Images/SplitToggleDown.pdf: Added. | |
| * UserInterface/Images/SplitToggleUp.pdf: Added. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showConsole): Use toggleConsoleView instead. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Create a navigation item for toggling the split. | |
| (WebInspector.LogContentView.prototype.get navigationItems): Include the new item. | |
| (WebInspector.LogContentView.prototype._toggleSplit): Added. | |
| * UserInterface/Main.css: | |
| (#split-content-browser): Added. | |
| * UserInterface/Main.html: Added #split-content-browser element. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create settings and the split content browser. | |
| (WebInspector.prefersUsingSplitConsole): Added. | |
| (WebInspector.isShowingSplitConsole): Added. | |
| (WebInspector.toggleSplitConsole): Added. | |
| (WebInspector.showSplitConsole): Added. | |
| (WebInspector.hideSplitConsole): Added. | |
| (WebInspector.showFullHeightConsole): Added. | |
| (WebInspector.isShowingConsoleView): Added. | |
| (WebInspector.showConsoleView): Call showSplitConsole or showFullHeightConsole. | |
| (WebInspector.toggleConsoleView): Added. | |
| (WebInspector._contentBrowserCurrentContentViewDidChange): Added. Update the console | |
| button activated state. | |
| 2013-02-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12808694> Enter and Shift+Enter should search forward and backwards | |
| Reviewed by Antoine Quint. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): | |
| Initialize new member variables. | |
| (WebInspector.FindBanner.prototype._inputFieldKeyDown): | |
| (WebInspector.FindBanner.prototype._inputFieldKeyUp): | |
| Track when the shift key is down inside the search field. Also track | |
| when the enter key is pressed to trigger the input's "search" event. | |
| We only want to respect shift when the user hits enter to search. | |
| (WebInspector.FindBanner.prototype._inputFieldSearch): | |
| If the search value stayed the same, and there are search results, | |
| and the user hit enter, then search forwards or backwards. | |
| 2013-01-31 Antoine Quint <graouts@apple.com> | |
| Followup fixes after <rdar://problem/11279186> REGRESSION (Safari 6): Timeline | |
| view missing type filters. Addresses the good feedback from JoePeck. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid): | |
| (WebInspector.TimelineDataGrid.prototype._scopeBarSelectedItemsDidChange): | |
| * UserInterface/TimelinesContentView.js: | |
| 2013-01-31 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13085826> Add stubs for new Page protocol events (frameStartedLoading, etc.) | |
| WebCore added a bunch of Page events in http://trac.webkit.org/changeset/140649. We're | |
| registering them and providing stub handlers until we actually do something with them. | |
| This removes some annoying errors in the Inception console output. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.prototype.frameDetached): | |
| (WebInspector.PageObserver.prototype.frameStartedLoading): | |
| (WebInspector.PageObserver.prototype.frameStoppedLoading): | |
| (WebInspector.PageObserver.prototype.frameScheduledNavigation): | |
| (WebInspector.PageObserver.prototype.frameClearedScheduledNavigation): | |
| 2013-01-31 Antoine Quint <graouts@apple.com> | |
| Followup fix to <rdar://problem/10981607> REGRESSION (Safari 6): CSS and JavaScript profiles need a visible way to toggle between absolute times and percentages. | |
| * UserInterface/ProfileView.js: | |
| (WebInspector.ProfileView): | |
| 2013-01-30 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13115633> JavaScript profiles percentage values don't have the "%" symbol in them | |
| Ensure we add the "%" symbol to values reported in the JS profile data | |
| grid when percents are used. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype.get data): | |
| 2013-01-30 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13101516> REGRESSION: JavaScript profile recorded from Web Inspector UI never finishes | |
| Two changes made in WebCore broke our support for JavaScript profiling. The first introduced by | |
| http://trac.webkit.org/changeset/126580 was that ProfilerAgent.getProfileHeaders() needed to be | |
| called for any addProfileHeader event to be dispatched to the front-end. The second issue was | |
| introduced by http://trac.webkit.org/changeset/139998 which changed the backend API in a non- | |
| backward-compatible way so that ProfilerAgent.getProfile() was split in two methods: | |
| getCPUProfile() and getHeapSnapshot(). | |
| This patch simply adds a call to ProfilerAgent.getProfileHeaders() as soon as the ProfilerAgent | |
| is enabled and also changes the backend we register and call to get the profile to use the | |
| most current WebCore API. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager): | |
| 2013-01-29 Timothy Hatcher <timothy@apple.com> | |
| Stop showing "undefined" and empty scope bar items in the Timeline view. | |
| <rdar://problem/13109468> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._makeColumnScopeBar): Check the type of the value, | |
| not the type of the key. | |
| 2013-01-29 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11279186> REGRESSION (Safari 6): Timeline view missing type filters | |
| We now add a ScopeBar above the data grid shown for the currently selected record | |
| type as the data grid is hovered. The filtered type is set by adding a .scopeBar | |
| property on the column descriptor and the filtering code is ready to be able to | |
| deal with multiple filterable types per data grid if/when we decide to do this. | |
| However, the UI code only knows how to handle one filterable column per data grid | |
| as it stands. The scope bar showing above the data grid fits snuggly where the timeline | |
| would usually show and has a 10px invisible padding at the top to ensure the user | |
| doesn't mouse out of it too easily. | |
| The hot path _updatePendingRecordsWithNewBounds was updated to filter the pending | |
| records taking into account the current filters, and a new _refreshAllRecordsForCurrentDataGrid | |
| method was added to deal with changes of filters, which takes a less optimized and | |
| more brutal path. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ScopeBar.js: | |
| (WebInspector.ScopeBar.prototype.get defaultItem): | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid): | |
| (WebInspector.TimelineDataGrid.prototype._scopeBarSelectedItemsDidChange): | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid > .navigation-bar-container): | |
| (.content-view.timelines > .data-grid:hover > .navigation-bar-container): | |
| (.content-view.timelines > .data-grid > .navigation-bar-container > .navigation-bar): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsWithNewBounds): | |
| (WebInspector.TimelinesContentView.prototype._scheduleGridNodeForRefresh): | |
| (WebInspector.TimelinesContentView.prototype._makeColumnScopeBar): | |
| (WebInspector.TimelinesContentView.prototype._dataGridFiltersDidChange): | |
| (WebInspector.TimelinesContentView.prototype._refreshAllRecordsForCurrentDataGrid): | |
| (WebInspector.TimelinesContentView.prototype.filterableValueForRecordAndIdentifier): | |
| (WebInspector.TimelinesContentView.prototype._filterRecordsWithType): | |
| 2013-01-29 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/10981607> REGRESSION (Safari 6): CSS and JavaScript profiles need a visible way to toggle between absolute times and percentages | |
| Refactoring the CSSSelectorProfileView and JavaScriptProfileView classes to both | |
| inherit from the new ProfileView class which provide a navigation bar item to | |
| toggle how times are displayed (absolute times vs. a percentage) via a % icon. | |
| This was also the chance to simplify the settings used in the JavaScriptProfileView | |
| which used three different settings for the self, total and average columns. Now these | |
| columns shared the same setting. | |
| Note that part of this patch is speculative due to <rdar://problem/13101516> REGRESSION: | |
| Profile recorded from Web Inspector UI never finishes. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): | |
| (WebInspector.CSSSelectorProfileView.prototype.toggleTimeDisplay): | |
| (WebInspector.CSSSelectorProfileView.prototype._sortProfile): | |
| * UserInterface/Images/Percent.pdf: Added. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.profileCallback): | |
| (WebInspector.JavaScriptProfileView): | |
| (WebInspector.JavaScriptProfileView.prototype.toggleTimeDisplay): | |
| * UserInterface/Main.html: | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype.get data): | |
| * UserInterface/ProfileView.js: Added. | |
| (WebInspector.ProfileView): | |
| (WebInspector.ProfileView.prototype.get navigationItems): | |
| (WebInspector.ProfileView.prototype.get profile): | |
| (WebInspector.ProfileView.prototype.set profile): | |
| (WebInspector.ProfileView.prototype.toggleTimeDisplay): | |
| 2013-01-26 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror to from 3.0 to 3.0.2. | |
| https://github.com/marijnh/CodeMirror/compare/v3.0...v3.02 | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/External/CodeMirror/LICENSE: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.css: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.js: Updated. | |
| * UserInterface/External/CodeMirror/css.js: Updated. | |
| * UserInterface/External/CodeMirror/javascript.js: Updated. | |
| * UserInterface/External/CodeMirror/runmode.js: Updated. | |
| * UserInterface/External/CodeMirror/searchcursor.js: Updated. | |
| * UserInterface/External/CodeMirror/xml.js: Updated. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror pre): Dropped the ":not(.CodeMirror-cursor)". | |
| Since CodeMirror-cursor is now a div. | |
| 2013-01-25 Timothy Hatcher <timothy@apple.com> | |
| Account for a difference in how frames load about:blank. | |
| There was a change in how about:blank frame loads are reported over the Inspector | |
| protocol that was causing a far reaching exception to break parts of the Inspector. | |
| <rdar://problem/13067806> REGRESSION: Timeline fail to record anything in some cases | |
| Reviewed by Antoine Quint. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): If the frame isn't known, then | |
| create a new resource which will make a new frame. Mark is as loaded at the end too since we don't | |
| expect any more events about the load finishing for these frames. | |
| 2013-01-24 Timothy Hatcher <timothy@apple.com> | |
| Reduce the number layouts and style recalculations when switching views or updating | |
| the navigation bar when the selection changes. | |
| <rdar://problem/12975185> 30 second hang inspecting scrolling perf results page | |
| <rdar://problem/11349044> Changing element selection in the Web Inspector hangs | |
| for ~2s because JavaScript forces 27 layouts | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): Use updateLayoutSoon. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.insertNavigationItem): Use updateLayoutSoon. Remove explicit | |
| call to _updateStyle and set _needsStyleUpdated instead. | |
| (WebInspector.NavigationBar.prototype.removeNavigationItem): Ditto. | |
| (WebInspector.NavigationBar.prototype.updateLayoutSoon): Added. | |
| (WebInspector.NavigationBar.prototype.updateLayoutSoon.update): Added. | |
| (WebInspector.NavigationBar.prototype.updateLayout): Clear _needsLayout. Call _updateStyle if | |
| _needsStyleUpdated is true. | |
| (WebInspector.NavigationBar.prototype._updateStyle): Clear _needsStyleUpdated. | |
| * UserInterface/NavigationItem.js: | |
| (WebInspector.NavigationItem.prototype.set hidden): Use updateLayoutSoon. | |
| 2013-01-24 Timothy Hatcher <timothy@apple.com> | |
| Show the resource and line info in the Initiator column, next to the function name. | |
| This helps further identify which file and line the event occurred on without needing | |
| to hover for the tooltip. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): Add a subtitle | |
| element so the resource name is visible. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid td .subtitle::before): Added. Show a emdash | |
| before the subtitle. | |
| 2013-01-23 Timothy Hatcher <timothy@apple.com> | |
| Make editing CSS resources work and update the page live. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): | |
| (WebInspector.CSSStyleManager.prototype.noteStyleSheetChanged.gotStyleSheetText): Implement the FIXME. | |
| (WebInspector.CSSStyleManager.prototype._lookupStyleSheetIdentifiersForResource): Added. | |
| (WebInspector.CSSStyleManager.prototype._lookupStyleSheetIdentifiers): Added. | |
| (WebInspector.CSSStyleManager.prototype._setContentForStyleSheetIdentifier): Added. | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange): Added. | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange.applyStyleSheetChanges): Added. | |
| (WebInspector.CSSStyleManager.prototype._resourceContentDidChange.applyStyleSheetChanges.styleSheetIdentifiersFound): Added. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.set currentRevision): Fire ContentDidChange event. | |
| (WebInspector.SourceCode.prototype.revisionContentDidChange): Ditto. | |
| (WebInspector.SourceCode.prototype._processContent): Ignore content change events for original content. | |
| * UserInterface/SourceCodeRevision.js: | |
| (WebInspector.SourceCodeRevision.prototype.set content): Call revisionContentDidChange on SourceCode. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Listen for change event. | |
| (WebInspector.TextEditor.prototype.set string): Ignore change event when setting the string. | |
| (WebInspector.TextEditor.prototype.get readOnly): Added. | |
| (WebInspector.TextEditor.prototype.set readOnly): Added. | |
| (WebInspector.TextEditor.prototype._contentChanged): Added. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Listen for SourceCode ContentDidChange event. | |
| (WebInspector.TextResourceContentView.prototype.closed): Remove ContentDidChange event listener. | |
| (WebInspector.TextResourceContentView.prototype._contentWillPopulate): Make editor writable for CSS. | |
| (WebInspector.TextResourceContentView.prototype._sourceCodeContentDidChange): Added. Update editor content. | |
| (WebInspector.TextResourceContentView.prototype._textEditorContentDidChange): Added. Update source code content. | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Clean up how CSSStyleManager tracks stylesheet changes. | |
| Replaces _fireStyleSheetChanged with noteStyleSheetChanged and populates stylesheet | |
| identifiers for later use. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSProperty.js: | |
| (WebInspector.CSSProperty.prototype.callback): Use noteStyleSheetChanged instead of _fireStyleSheetChanged. | |
| (WebInspector.CSSProperty.prototype.setText): Ditto. | |
| (WebInspector.CSSProperty.prototype.setDisabled): Ditto. | |
| * UserInterface/CSSStyleDeclaration.js: | |
| (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt): Use noteStyleSheetChanged instead of _fireStyleSheetChanged. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): | |
| (WebInspector.CSSStyleManager.prototype.noteStyleSheetChanged): Added. | |
| (WebInspector.CSSStyleManager.prototype.noteStyleSheetChanged.gotStyleSheetText): Added. | |
| (WebInspector.CSSStyleManager.prototype.noteStyleSheetChanged.syleSheetsFetched): Added. | |
| (WebInspector.CSSStyleManager.prototype._fetchInfoForAllStyleSheets): Added. Populate the identifier maps. | |
| (WebInspector.CSSStyleManager.prototype.setRuleSelector): Use noteStyleSheetChanged instead of _fireStyleSheetChanged. | |
| (WebInspector.CSSStyleManager.prototype.addRule): Ditto. | |
| * UserInterface/CSSStyleSheet.js: Removed. | |
| * UserInterface/Main.html: Removed CSSStyleSheet.js. | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Add a BranchManager class for tracking various branches. | |
| There are two initial branches -- Original and Working Copy. Currently | |
| the Working Copy is always the current branch, but this will be controllable | |
| from the user interface at some point. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BranchManager.js: Added. | |
| (WebInspector.BranchManager): | |
| (WebInspector.BranchManager.prototype.get branches): | |
| (WebInspector.BranchManager.prototype.get currentBranch): | |
| (WebInspector.BranchManager.prototype.set currentBranch): | |
| (WebInspector.BranchManager.prototype.createBranch): | |
| (WebInspector.BranchManager.prototype.deleteBranch): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Instantiate BranchManager. | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Add a SourceCodeRevision class for recording changes to SourceCode objects. | |
| Offloads the the content and contentIsBase64Encoded properties to SourceCodeRevision. | |
| SourceCode now creates an original revision that holds the original content. In addition | |
| to the original revision, there is a current revision that can be set to point to different | |
| content based on the original. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Branch.js: | |
| (WebInspector.Branch.prototype.revisionForRepresentedObject): Added. Helper for finding or | |
| creating a new revision for an object. | |
| * UserInterface/Main.html: | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode): | |
| (WebInspector.SourceCode.prototype.get originalRevision): Added. | |
| (WebInspector.SourceCode.prototype.get currentRevision): Added. | |
| (WebInspector.SourceCode.prototype.set currentRevision): Added. | |
| (WebInspector.SourceCode.prototype.get content): Use currentRevision. | |
| (WebInspector.SourceCode.prototype.get contentIsBase64Encoded): Use currentRevision. | |
| (WebInspector.SourceCode.prototype._processContent): Set originalRevision content. | |
| * UserInterface/SourceCodeRevision.js: Added. | |
| (WebInspector.SourceCodeRevision): | |
| (WebInspector.SourceCodeRevision.prototype.get sourceCode): | |
| (WebInspector.SourceCodeRevision.prototype.get content): | |
| (WebInspector.SourceCodeRevision.prototype.set content): | |
| (WebInspector.SourceCodeRevision.prototype.get contentIsBase64Encoded): | |
| (WebInspector.SourceCodeRevision.prototype.set contentIsBase64Encoded): | |
| (WebInspector.SourceCodeRevision.prototype.apply): Set currentRevision to point to this. | |
| (WebInspector.SourceCodeRevision.prototype.revert): Set currentRevision to point to the original. | |
| (WebInspector.SourceCodeRevision.prototype.copy): Copy the content and create a new SourceCodeRevision. | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Add a BranchManager class for tracking various branches. | |
| There are two initial branches -- Original and Working Copy. Currently | |
| the Working Copy is always the current branch, but this will be controllable | |
| from the user interface at some point. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BranchManager.js: Added. | |
| (WebInspector.BranchManager): | |
| (WebInspector.BranchManager.prototype.get branches): | |
| (WebInspector.BranchManager.prototype.get currentBranch): | |
| (WebInspector.BranchManager.prototype.set currentBranch): | |
| (WebInspector.BranchManager.prototype.createBranch): | |
| (WebInspector.BranchManager.prototype.deleteBranch): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Instantiate BranchManager. | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Add a Branch and Revision class for tracking edits in the Inspector. | |
| These classes are not used yet and will be used in subsequent changes. | |
| A branch holds revisions that are differences from the original page. | |
| Concrete revision subclasses will know the specifics about the edited | |
| part of the page and how to apply or revert the change. | |
| <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Branch.js: Added. | |
| (WebInspector.Branch): | |
| (WebInspector.Branch.prototype.get displayName): | |
| (WebInspector.Branch.prototype.set displayName): | |
| (WebInspector.Branch.prototype.get revisions): | |
| (WebInspector.Branch.prototype.get locked): | |
| (WebInspector.Branch.prototype.addRevision): | |
| (WebInspector.Branch.prototype.removeRevision): | |
| (WebInspector.Branch.prototype.reset): | |
| (WebInspector.Branch.prototype.apply): | |
| (WebInspector.Branch.prototype.revert): | |
| (WebInspector.Branch.prototype.lock): | |
| (WebInspector.Branch.prototype.unlock): | |
| * UserInterface/Main.html: | |
| * UserInterface/Revision.js: Added. | |
| (WebInspector.Revision): | |
| (WebInspector.Revision.prototype.apply): | |
| (WebInspector.Revision.prototype.revert): | |
| (WebInspector.Revision.prototype.copy): | |
| 2013-01-22 Timothy Hatcher <timothy@apple.com> | |
| Move contentURL from SourceCode to Resource since _mimeType is | |
| only available on Resource. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get contentURL): Added. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.get contentURL): Removed. | |
| 2013-01-23 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13069440> Switching away from debugger using keyboard shortcut retains popover on screen | |
| Dismiss the popover upon hiding the debugger. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.hidden): | |
| 2013-01-23 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13059630> Move debugger popover display support to SourceCodeTextEditor | |
| Split code between TextEditor and SourceCodeTextEditor such that TextEditor handles all | |
| the user interaction and the interfacing with CodeMirror and notifies subclasses using | |
| the .tokenWasHovered() method and keeping the currently hovered token in .hoveredToken. | |
| This token contains the bounds of the hovered token as well as its expression, type, | |
| start and end characters information. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SourceCodeTextEditor.css: | |
| (.popover .debugger-popover-content): | |
| (.popover .expandable): | |
| (.popover .debugger-popover-content .title): | |
| (.popover .debugger-popover-content .body): | |
| (.popover .debugger-popover-content.function .body): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointToggled): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidPause): | |
| (WebInspector.SourceCodeTextEditor.prototype._debuggerDidResume): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered.populate): | |
| (WebInspector.SourceCodeTextEditor.prototype.tokenWasHovered): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopover): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForFunction): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForObject): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForString): | |
| (WebInspector.SourceCodeTextEditor.prototype._showPopoverForNumber): | |
| (WebInspector.SourceCodeTextEditor.prototype.willDismissPopover): | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror .hovered-token-highlight): | |
| (@-webkit-keyframes text-editor-hovered-token-highlight-fadeout): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.startTrackingTokenHovering): | |
| (WebInspector.TextEditor.prototype.stopTrackingTokenHovering): | |
| (WebInspector.TextEditor.prototype.handleEvent): | |
| (WebInspector.TextEditor.prototype.highlightHoveredToken): | |
| (WebInspector.TextEditor.prototype.removeHighlightOnHoveredToken): | |
| (WebInspector.TextEditor.prototype.tokenWasHovered): | |
| (WebInspector.TextEditor.prototype._openClickedLinks): | |
| (WebInspector.TextEditor.prototype._mouseMovedOverEditor): | |
| (WebInspector.TextEditor.prototype._mouseMovedOutOfEditor): | |
| (WebInspector.TextEditor.prototype._checkHoveredToken): | |
| 2013-01-22 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13059425> Console filters should persist across sessions | |
| Make ScopeBarItem save their selected state in a WebInspector.Setting that | |
| we read from to set the initial state. This change requires consumers of the | |
| ScopeBar class to ensure they don't just rely on selection change events | |
| but also run an initial update to match selected ScopeBarItems upon creation, | |
| so we update LogContentView to do this. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange): | |
| * UserInterface/ScopeBar.js: | |
| (WebInspector.ScopeBar): | |
| (WebInspector.ScopeBar.prototype.get selectedItems): | |
| (WebInspector.ScopeBar.prototype._populate): | |
| (WebInspector.ScopeBar.prototype._itemSelectionDidChange): | |
| * UserInterface/ScopeBarItem.js: | |
| (WebInspector.ScopeBarItem): | |
| (WebInspector.ScopeBarItem.prototype.get selected): | |
| (WebInspector.ScopeBarItem.prototype.setSelected): | |
| (WebInspector.ScopeBarItem.prototype._markElementSelected): | |
| 2013-01-22 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/11651957> REGRESSION (Safari 6): Does not show var value on hover in the debugger | |
| Display a popover for any variable or function definition in the text editor | |
| hovered long enough (500ms) during a debugging session. The popover contains | |
| the expression as evaluated by the DebuggerAgent. Each value type has a specialized | |
| display as borrowed from OpenSource code (from ObjectPopoverHelper) and adapted to fit | |
| our coding style. | |
| We do a fair bit of nifty work to avoid unwanted actions. For instance, we track mouseout | |
| events to identify when the user mouses out of the editor so that we can reset the hover | |
| state and avoid having whatever was the last hovered token show a popover even though we | |
| may have exited the editor along the way. Additionally, we track the pressed state of the | |
| mouse button to avoid having the popover show during a selection. | |
| We're also making various enhancements to the Popover class to support the attachment of | |
| popovers to tokens in the TextEditor as the debugger is paused. Here are the highlights: | |
| - adopt UIKit-like terminology for present/dismiss methods. | |
| - let consumers of the Popover API provide bounds instead of an element as a reference to | |
| which the popover should be attached, removing the dependency on having an element to work with. | |
| - make the popover's element private since it really needs not to be customised as presentation | |
| is fully managed by the popover itself, however allow a `content` element to be provided to | |
| the .present() method and letting the popover host it as needed. | |
| - no longer remove the popover on window blur as OpenSource leaves it on display and it makes | |
| debugging of the popover difficult. | |
| - handle padding of the popover frame in code for computations of the tighter bounding box | |
| as we can't have it done in CSS until we already know what edge we end up using for the popover. | |
| - begin to offer a delegation protocol for popovers, right now willDismiss / didDismiss. | |
| - horizontal and vertically align content that is smaller than the minimal bounds of the popover. | |
| Reviewed by Joseph Pecoraro and Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/Popover.css: | |
| (.popover): | |
| (.popover > .container): | |
| (.popover > .container.center): | |
| (.popover.arrow-up > .container): | |
| (.popover.arrow-right > .container): | |
| (.popover.arrow-down > .container): | |
| (.popover.arrow-left > .container): | |
| * UserInterface/Popover.js: | |
| (WebInspector.Popover): | |
| (WebInspector.Popover.prototype.set frame): | |
| (WebInspector.Popover.prototype.present): | |
| (WebInspector.Popover.prototype.dismiss): | |
| (WebInspector.Popover.prototype.handleEvent): | |
| (WebInspector.Popover.prototype._cssClassNameForEdge): | |
| (WebInspector.Popover.prototype._bestFrameForEdge): | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror .popover-highlight): | |
| (@-webkit-keyframes text-editor-popover-highlight-fadeout): | |
| (to): | |
| (.popover .debugger-popover-content): | |
| (.popover .expandable): | |
| (.popover .debugger-popover-content .title): | |
| (.popover .debugger-popover-content .body): | |
| (.popover .debugger-popover-content.function .body): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype._openClickedLinks): | |
| (WebInspector.TextEditor.prototype._debuggerDidPause): | |
| (WebInspector.TextEditor.prototype._debuggerDidResume): | |
| (WebInspector.TextEditor.prototype._debuggerActiveCallFrameDidChange): | |
| (WebInspector.TextEditor.prototype.handleEvent): | |
| (WebInspector.TextEditor.prototype._mouseMovedOverEditor): | |
| (WebInspector.TextEditor.prototype._mouseMovedOutOfEditor): | |
| (WebInspector.TextEditor.prototype._mouseButtonWasPressedOverEditor): | |
| (WebInspector.TextEditor.prototype._mouseButtonWasReleasedOverEditor): | |
| (WebInspector.TextEditor.prototype._windowLostFocus): | |
| (WebInspector.TextEditor.prototype._tokenWasHovered): | |
| (WebInspector.TextEditor.prototype._populateCallback): | |
| (WebInspector.TextEditor.prototype._showPopover): | |
| (WebInspector.TextEditor.prototype._showPopoverForFunction.didGetDetails): | |
| (WebInspector.TextEditor.prototype._showPopoverForFunction): | |
| (WebInspector.TextEditor.prototype._showPopoverForObject): | |
| (WebInspector.TextEditor.prototype._showPopoverForString): | |
| (WebInspector.TextEditor.prototype._showPopoverForNumber): | |
| (WebInspector.TextEditor.prototype.willDismissPopover): | |
| 2013-01-22 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12243633> REGRESSION (Safari 6): Console missing type filters | |
| Adding a new ScopeBar subclass of NavigationItem to allow the display of scope | |
| options in a navigation bar. Use this new class in LogContentView to display | |
| All / Errors / Warnings / Logs options in the right part of the view's navigation bar. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems): | |
| * UserInterface/LogContentView.css: | |
| (.console-messages.supress-logs .console-log-level): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.get navigationItems): | |
| (WebInspector.LogContentView.prototype._clearLog): | |
| (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange.toggle): | |
| (WebInspector.LogContentView.prototype._scopeBarSelectionDidChange): | |
| * UserInterface/Main.html: | |
| * UserInterface/ScopeBar.css: Added. | |
| (.scope-bar): | |
| (.scope-bar > li): | |
| (.scope-bar > li:active): | |
| (.scope-bar > li:hover): | |
| (.scope-bar > li.selected): | |
| * UserInterface/ScopeBar.js: Added. | |
| (WebInspector.ScopeBar): | |
| (WebInspector.ScopeBar.prototype.item): | |
| (WebInspector.ScopeBar.prototype._populate): | |
| (WebInspector.ScopeBar.prototype._itemSelectionDidChange): | |
| * UserInterface/ScopeBarItem.js: Added. | |
| (WebInspector.ScopeBarItem): | |
| (WebInspector.ScopeBarItem.prototype.get element): | |
| (WebInspector.ScopeBarItem.prototype.get selected): | |
| (WebInspector.ScopeBarItem.prototype.set selected): | |
| (WebInspector.ScopeBarItem.prototype.setSelected): | |
| (WebInspector.ScopeBarItem.prototype._clicked): | |
| 2013-01-17 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/13006824> Provide a Popover class | |
| Basic Popover class to allow the display of any HTML content within a popover. | |
| The public API of this class is very simple. Use .showRelativeToElement(element, preferredEdge) | |
| to display the popover pointing to the provided target element with the provided edge as the | |
| preferred edge of the target element towards which the popover's arrow should point to. | |
| The method will check whether it can honour the edge preference based on the available screen | |
| real estate. As it stands, the popover will constrain its display to the entire Web Inspector | |
| window, but it could easily be made to match a more constrained space with a new WebInspector.Rect | |
| parameter or Element reference. | |
| You can then use .close() to dismiss the popover with an animated transition, although the popover | |
| will automatically dismiss itself upon user interaction initiated outside of the popover's bounds | |
| or when the Web Inspector window is no longer focused. | |
| Additionally, the necessary geometry functions for the Popover class is taken from iAd JS and adapted | |
| here to fit with the Web Inspector coding style. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Geometry.js: Added. | |
| (WebInspector.Point): | |
| (WebInspector.Point.fromEvent): | |
| (WebInspector.Point.fromEventInElement): | |
| (WebInspector.Point.prototype.toString): | |
| (WebInspector.Point.prototype.copy): | |
| (WebInspector.Point.prototype.equals): | |
| (WebInspector.Size): | |
| (WebInspector.Size.prototype.toString): | |
| (WebInspector.Size.prototype.copy): | |
| (WebInspector.Size.prototype.equals): | |
| (WebInspector.Rect): | |
| (WebInspector.Rect.rectFromClientRect): | |
| (WebInspector.Rect.prototype.toString): | |
| (WebInspector.Rect.prototype.copy): | |
| (WebInspector.Rect.prototype.equals): | |
| (WebInspector.Rect.prototype.inset): | |
| (WebInspector.Rect.prototype.minX): | |
| (WebInspector.Rect.prototype.minY): | |
| (WebInspector.Rect.prototype.midX): | |
| (WebInspector.Rect.prototype.midY): | |
| (WebInspector.Rect.prototype.maxX): | |
| (WebInspector.Rect.prototype.maxY): | |
| (WebInspector.Rect.prototype.intersectionWithRect): | |
| (WebInspector.EdgeInsets): | |
| (WebInspector.EdgeInsets.prototype.equals): | |
| (WebInspector.EdgeInsets.prototype.copy): | |
| * UserInterface/Popover.css: Added. | |
| (.popover): | |
| (.popover.arrow-up): | |
| (.popover.arrow-right): | |
| (.popover.arrow-down): | |
| (.popover.arrow-left): | |
| (.popover.fade-out): | |
| * UserInterface/Popover.js: Added. | |
| (WebInspector.Popover): | |
| (WebInspector.Popover.prototype.get element): | |
| (WebInspector.Popover.prototype.get frame): | |
| (WebInspector.Popover.prototype.set frame): | |
| (WebInspector.Popover.prototype.area): | |
| (WebInspector.Popover.prototype.showRelativeToElement): | |
| (WebInspector.Popover.prototype.close): | |
| (WebInspector.Popover.prototype.handleEvent): | |
| (WebInspector.Popover.prototype._drawBackground): | |
| (WebInspector.Popover.prototype._bestFrameForEdge): | |
| (WebInspector.Popover.prototype._drawFrame): | |
| 2013-01-11 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/10015674> REGRESSION (Safari 5): Option-click on a disclosure triangle does not deep-expand a DOM subtree (66868) | |
| Up to now, the TreeElement.prototype.expandRecursively() method would correctly | |
| expand children recursively based on the provided depth, but would not wait to | |
| perform this task until all child nodes had been populated, which means that this | |
| would only work incrementally with one additional level of child nodes being shown | |
| expanded in the DOM tree upon alt+clicking a given node with a deep hierarchy. | |
| In order to fix this, we rely on the newly added optional argument to DOMAgent's | |
| requestChildNodes() method to provide the depth at which we want to retrieve children | |
| of a given node (see http://trac.webkit.org/changeset/139429). The DOMAgent provides | |
| a new .getSubtree() method that calls requestChildNodes() with the provided depth. | |
| Then in DOMTreeElement, we subclass .expandRecursively() to first call DOMAgent's | |
| new .getSubtree() method and then call the default implementation when all nodes | |
| have been retrieved from the backend. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.): | |
| (WebInspector.DOMNode.prototype.getSubtree): New method allowing to specify at what | |
| depth we want to retrieve children of a given node from the backend. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.expandRecursively): Override default implementation | |
| to first obtain the deepest subtree for the current node so that deep expansion happens | |
| as expected. | |
| * UserInterface/InspectorBackendCommands.js: Register the new optional `depth` parameter | |
| for DOMAgent's .requestChildNodes(). | |
| 2013-01-07 Joseph Pecoraro <pecoraro@apple.com> | |
| Drive by style fix. Add super constructor call to CSSStyleManager. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): | |
| No functional difference, but I just noticed a missing call. | |
| 2013-01-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12967231> extract-localizable-js-strings should warn about improper WebInspector.UIString uses | |
| Reviewed by David Kilzer. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Add missing strings. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._updateCallback): | |
| Remove a comment containing a UIString call. This is not needed for Safari. | |
| * UserInterface/DatabaseContentView.js: | |
| (WebInspector.DatabaseContentView.prototype._queryError): | |
| Use WebInspector.UIString("...").format syntax so the string is not missed. | |
| 2013-01-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12964366> LayerTreeSidebarPanel._buildLayerInfoSection is too clever for update-safari-localizable-string / extract-localizable-js-strings | |
| Reviewed by David Kilzer. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateLayerInfoSection): | |
| Ensure all WebInspector.UIString uses contain a string literal, which | |
| is what extract-localizable-js-strings expects. | |
| 2013-01-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12961674> Resizing QuickConsole drawer may need to refresh CodeMirror editor for new visible size | |
| The CodeMirror TextEditor only has DOM elements for visible lines, with | |
| some buffer. It needs to be updated when the visible (scroll dimensions) | |
| of its content area are updated. The content view's dimensions flex with | |
| the size of the QuickConsole. So, when the QuickConsole resizes we | |
| should update the layout of the content browser. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._quickConsoleDidResize): | |
| Observe when the quick console resizes and update the layout of the content browser. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._updateViewContainerSizeAndScrollDivider): | |
| (WebInspector.QuickConsole.prototype._isResizing): | |
| Whenever we resize we go through this method. Dispatch the resize event. | |
| We may take the early path if we are resizing manually, in that case the | |
| new height would have been set in the mouse handler. | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.updateLayout): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.updateLayout): | |
| In content views containing text editors be sure to pass update layout | |
| on to the text editor to refresh the CodeMirror editor. | |
| 2013-01-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12961455> "No Style Properties" text in styles HTML Attributes sidebar should not be monospace | |
| Adjust the styles for the sidebar so that things look a bit nicer. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section): | |
| Make the minimum size 17px. This makes the HTML attributes section not | |
| look like there is extra padding at the bottom. This also reduces the | |
| height of empty sections a bit, saving vertical space. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.empty.syntax-highlighted): | |
| The HTML Attributes section is .syntax-highlighted. Ignore the fonts it | |
| sets and revert back to the normal details section font. | |
| (.details-section > .content > .group > .row.properties:not(.empty)): | |
| Remove extra padding on properties sections when its the empty message. | |
| 2013-01-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Skip document nodes when searching. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.domSearchResults): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.domCallback): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch): | |
| 2013-01-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12956057> REGRESSION: Cannot develop nodes in the DOM tree inspector for dynamically-generated content (106080) | |
| Handle a null ownerDocument to avoid an error. This worked previously | |
| because each backend message was dispatched individually via setInterval. | |
| Now however, they are batched after a setTimeout so an earlier uncaught | |
| exception can break / prevent handling of other messages in that batch. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._buildAttributeDOM): | |
| 2013-01-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12959910> Uncaught Error in LayerTreeSidebar breaks all right sidebars | |
| In SidebarPanel.prototype.hidden the parentSidebar might be null. In | |
| those cases, LayerTreeSidebarPanel could cause an error that would | |
| make changing the right sidebar impossible. | |
| The error was happening if the sidebar panel was removed instead of | |
| being hidden. Removed meaning the content view changes and the sidebar | |
| panel is no longer relevant. Hidden meaning the user just switched | |
| to a different sidebar panel. | |
| The fix checks if parentSidebar exists when the panel is being hidden, | |
| but we also make sure to remove our event listener if the parentSidebar | |
| is being cleared with a new willRemove method. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.removeSidebarPanel): | |
| * UserInterface/SidebarPanel.js: | |
| (WebInspector.SidebarPanel.prototype.willRemove): | |
| Give the sidebar panel an opportunity to handle the parentSidebar being cleared. | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype.shown): | |
| Assert that there is a parent sidebar when we are shown. | |
| (WebInspector.LayerTreeSidebarPanel.prototype.hidden): | |
| If there is a parent sidebar and we are hidden, the user is just switching | |
| sidebars, and we can remove the listener. | |
| (WebInspector.LayerTreeSidebarPanel.prototype.willRemove): | |
| If the parent sidebar is being cleared remove our listener, if it existed. | |
| 2013-01-05 Dan Bernstein <mitz@apple.com> | |
| Updated localizable strings. | |
| * Localizations/en.lproj/localizedStrings.js: Let update-safari-localizable-string | |
| remove one entry and one empty line. | |
| 2012-12-20 Antoine Quint <graouts@apple.com> | |
| Add missing localizedString that I forgot in the previous patch for | |
| <rdar://problem/12908978> Layer Tree: resize data grid upon width change. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2012-12-19 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12908978> Layer Tree: resize data grid upon width change | |
| Listen to width change events on the parent sidebar as the layer tree panel | |
| is shown, and do the opposite operation when it's hidden. Upon a width change, | |
| call .autoSizeColumns() on the data grid so that the separators are correctly | |
| positioned. | |
| In this patch we also change the string used to show the paint count from | |
| "Paint Count" to "Paints" which makes the data grid look much better. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype.shown): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.hidden): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._widthDidChange): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateLayerInfoSection): | |
| 2012-12-19 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12646424> Show redraw counts in layer tree inspector | |
| Simply add a new "Paint Count" field in the layer info and data grid to display | |
| the contents of the .paintCount property provided by the back-end, which had already | |
| landed in WebCore with <rdar://problem/12882763>. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/LayerTreeDataGridNode.js: | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| * UserInterface/LayerTreeSidebarPanel.js: | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateLayerInfoSection): | |
| 2012-12-19 Antoine Quint <graouts@apple.com> | |
| <rdar://problem/12031104> Show which elements are layer-backed | |
| This is the front-end part of the work started on the backend with | |
| https://bugs.webkit.org/show_bug.cgi?id=103513. We now provide a | |
| new details sidebar for the inspected element which lists the characteristics | |
| of its backing RenderLayer (metrics, amount of memory used and whether it is | |
| composited in hardware) and all child RenderLayers, with the option of only | |
| showing layers composited in hardware. At the bottom of the pane, we also have | |
| a status bar indicating the total number of layers for the selected node and | |
| its descendants as well as the total amount of memory used. | |
| The list of child layers allows the developer to select a node to see it | |
| highlighted on the page, and to click an arrow icon to jump to the layer's | |
| associated node in the DOM tree. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/InspectorBackendCommands.js: | |
| * UserInterface/LayerTreeDataGridNode.js: Added. DataGridNode custom subclass for the type of data grid nodes | |
| we show in the child layers data grid. | |
| (WebInspector.LayerTreeDataGridNode): | |
| (WebInspector.LayerTreeDataGridNode.prototype.createCellContent): | |
| (WebInspector.LayerTreeDataGridNode.prototype.set layer): | |
| (WebInspector.LayerTreeDataGridNode.prototype._createNodeCellContent): | |
| (WebInspector.LayerTreeDataGridNode.prototype._goToArrowWasClicked): | |
| * UserInterface/LayerTreeManager.js: Added. | |
| (WebInspector.LayerTreeManager): | |
| (WebInspector.LayerTreeManager.prototype.get supported): | |
| (WebInspector.LayerTreeManager.prototype.layerTreeMutations): Obtain the complete | |
| list of mutations between two flattened layer trees. | |
| (WebInspector.LayerTreeManager.prototype.refreshLayerTree): Retrieve the current layer | |
| tree from the backend, eventually triggering a layerTreeDidChange event as a result. | |
| (WebInspector.LayerTreeManager.prototype.flattenedLayerTree): | |
| (WebInspector.LayerTreeManager.prototype.): | |
| (WebInspector.LayerTreeManager.prototype.layersForNode): Obtain the layer associated to | |
| the provided node, if any, and a list of child layers, if any. | |
| (WebInspector.LayerTreeManager.prototype.layerTreeDidChange): | |
| (WebInspector.LayerTreeManager.prototype.var): | |
| (WebInspector.LayerTreeManager.prototype._obtainNodeIdsForLayerIds): Obtain the node ids | |
| for the provided layer ids from the backend. | |
| * UserInterface/LayerTreeObserver.js: Added. | |
| (WebInspector.LayerTreeObserver): Listen to "layerTreeDidChange" events triggered by the | |
| LayerTreeAgent exposed by WebCore. | |
| (WebInspector.LayerTreeObserver.prototype.layerTreeDidChange): Inform the layer tree manager | |
| that the layer tree has changed. | |
| * UserInterface/LayerTreeSidebarPanel.css: Added. | |
| * UserInterface/LayerTreeSidebarPanel.js: Added. | |
| (WebInspector.LayerTreeSidebarPanel): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.shown): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.hidden): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.refresh): | |
| (WebInspector.LayerTreeSidebarPanel.prototype.supportsDOMNode): Element nodes only are supported. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._layerTreeDidChange): Event handler for the | |
| "layerTreeDidChange" triggered by the layer tree manager. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildCheckbox): Build the checkbox controlling | |
| the option to only show layers composited in hardware. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildLayerInfoSection): Build the top section | |
| containing information about the inspected node's layer, if any. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildDataGridSection): Build the middle section | |
| containing the data grid showing the list of child layers, if any. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._buildBottomBar): Build the status bar displayed | |
| at the bottom showing the total number of layers for the inspected node and the amount of | |
| memory used. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid.comparator): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._sortDataGrid): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._selectedDataGridNodeChanged): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridGainedFocus): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridLostFocus): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridWasClicked): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._highlightSelectedNode): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGridFilter): | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDisplayWithLayers): Callback for the call | |
| made to .layersForNode() on the manager, triggers an update of all of the information reported | |
| in the panel. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateLayerInfoSection): Update only the top section. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateDataGrid): Update only the data grid. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._dataGridNodeForLayer): Generate a node for the data | |
| grid for the provided layer. | |
| (WebInspector.LayerTreeSidebarPanel.prototype._updateMetrics): Update only the bottom status bar. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-12-04 Timothy Hatcher <timothy@apple.com> | |
| Prevent lines from highlighting again if the user scrolls with a line highlighted. | |
| This switches off of a webkitAnimationEnd event listener because the line element might | |
| be removed if the user scrolls during the animation. In that case webkitAnimationEnd isn't | |
| fired, and the line would highlight again the next time it scrolls into view. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.removeStyleClass): Removed event listener code. | |
| (WebInspector.TextEditor.prototype.revealAndHighlightLine): Schedule a timeout instead | |
| of an event listener. | |
| 2012-12-04 Timothy Hatcher <timothy@apple.com> | |
| Delay revealing a line until visible and the line exists. | |
| This regressed when we switched to CodeMirror. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set string.update): Call _revealPendingLineIfPossible. | |
| (WebInspector.TextEditor.prototype.shown.update): Call _revealPendingLineIfPossible. | |
| (WebInspector.TextEditor.prototype._revealPendingLineIfPossible): Store the line number | |
| and requested range until visible and the line exists. | |
| 2012-12-03 Dean Jackson <dino@apple.com> | |
| Followup on <rdar://problem/11492568> Show shadow DOM elements | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: New string for "Shadow Content". | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): Only create the _shadowRoots if necessary. | |
| (WebInspector.DOMNode.prototype.hasChildNodes): Test for existence of _shadowRoots. | |
| (WebInspector.DOMNode.prototype.hasShadowRoots): Ditto. | |
| (WebInspector.DOMNode.prototype._insertChild): Ditto. | |
| (WebInspector.DOMNode.prototype._setChildrenPayload): Ditto. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._nodeTypeDisplayName): Handle Document Fragment in switch. | |
| * UserInterface/DOMTreeElement.js: Use new UIString. | |
| * UserInterface/DOMTreeElementPathComponent.js: Handle Document Fragment in switch. | |
| (WebInspector.DOMTreeElementPathComponent): | |
| 2012-12-03 Dean Jackson <dino@apple.com> | |
| Allow inspection of Shadow DOM elements in Web Inspector | |
| <rdar://problem/11492568> Show shadow DOM elements | |
| Reviewed by Tim Hatcher. | |
| Add the Shadow DOM fragments to the DOM tree view. This allows | |
| us to inspect things like HTML5 Media captions and controls. | |
| Expose the setting via a checkbox in the context menu on the DOM | |
| tree view (which requires a reload if changed). Luckily the | |
| inspector protocol already provided all the Shadow DOM data so | |
| this was purely a UI change. | |
| * Localizations/en.lproj/localizedStrings.js: New menu item. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): New parameter to constructor: "isInShadowTree". | |
| (WebInspector.DOMNode.prototype.hasChildNodes): Check for shadow children too. | |
| (WebInspector.DOMNode.prototype.hasShadowRoots): New method. | |
| (WebInspector.DOMNode.prototype.isInShadowTree): New method. | |
| (WebInspector.DOMNode.prototype._insertChild): Inherit the shadow state as constructing children. | |
| (WebInspector.DOMNode.prototype._setChildrenPayload): Ditto. | |
| * UserInterface/DOMObserver.js: | |
| (WebInspector.DOMObserver.prototype.shadowRootPushed): Answer the protocol calls. | |
| (WebInspector.DOMObserver.prototype.shadowRootPopped): Ditto. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._buildTagDOM): Document Fragments get a special style if they are shadow root elements. | |
| (WebInspector.DOMTreeElement.prototype._singleTextChild): Return early if in shadow DOM. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._setDocument): Use new parameter when constructing DOMNode. | |
| (WebInspector.DOMTreeManager.prototype._setDetachedRoot): Ditto. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): | |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): Add a new checkbox to toggle the Shadow DOM visibility. | |
| (WebInspector.DOMTreeOutline.prototype._populateContextMenu): | |
| (WebInspector.DOMTreeOutline.prototype._toggleShowShadowDOM): | |
| * UserInterface/LogContentView.css: | |
| (.webkit-html-fragment.shadow): New style for shadow root fragments. | |
| 2012-12-02 Timothy Hatcher <timothy@apple.com> | |
| Linkify "src" and "href" attributes in HTML/SVG/XML resources. | |
| This extends the XML tokenizer to change the style of the string following | |
| "src" and "href" attributes into links. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorAdditions.js: | |
| (tokenizeLinkString): Added. | |
| (tokenizeEndOfLinkString): Added. | |
| (extendedXMLToken): Added. | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: | |
| (.cm-s-default .cm-link): Added. | |
| (.cm-s-default .cm-link:hover): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Added click event listener for _openClickedLinks. | |
| (WebInspector.TextEditor.prototype._openClickedLinks): Added. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Use CodeMirror to syntax highlight strings used for the DOM tree. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.syntaxHighlightStringAsDocumentFragment): Use CodeMirror.runMode. | |
| (WebInspector.syntaxHighlightStringAsDocumentFragment.appendText): Added. Create nodes based on the style. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Use WebInspector.CSSKeywordCompletions instead of WebInspector.SourceTokenizer to decide what | |
| is a keyword in the Style details sidebar. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Get the keywords. | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processKeyword): Use the keywords | |
| for the current property. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Hook up issues using CodeMirror. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SourceCodeTextEditor.css: | |
| (.source-code.text-editor > .CodeMirror .error): Renamed. | |
| (.source-code.text-editor > .CodeMirror .warning): Renamed. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): Moved issue population from here. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): ... to here. | |
| (WebInspector.SourceCodeTextEditor.prototype._issueWasAdded): Call _addIssue. | |
| (WebInspector.SourceCodeTextEditor.prototype._addIssue): Renamed from _addIssueToLine. Use | |
| addStyleClassToLine to add the styles. | |
| (WebInspector.SourceCodeTextEditor.prototype._addIssueToLineNumberMap): Merged with _addIssue. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.addStyleClassToLine): Added. | |
| (WebInspector.TextEditor.prototype.removeStyleClassFromLine): Added. | |
| (WebInspector.TextEditor.prototype.toggleStyleClassForLine): Added. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Hook up breakpoints using CodeMirror. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorAdditions.js: Added hasLineClass and toggleLineClass extensions. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): Call setBreakpointInfoForLine | |
| for each breakpoint. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointInfo): Removed. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): Removed delete here | |
| since calling removeBreakpoint will fire an event that causes us to delete the breakpoint. | |
| Deleting early was causing an assert in the event handler. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror .has-breakpoint:not(.breakpoint-disabled) .CodeMirror-linenumber): Added. | |
| (.text-editor > .CodeMirror .has-breakpoint .CodeMirror-linenumber::before): Added. | |
| (.text-editor > .CodeMirror .breakpoint-resolved .CodeMirror-linenumber::before): Added. | |
| (.text-editor > .CodeMirror .breakpoint-disabled .CodeMirror-linenumber::before): Added. | |
| (.text-editor > .CodeMirror .execution-line .CodeMirror-linenumber::after): Added. | |
| (.text-editor > .CodeMirror .execution-line pre): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Added "gutterClick" event listener. | |
| (WebInspector.TextEditor.prototype.set string): | |
| (WebInspector.TextEditor.prototype.set string.updateStyles): Update the execution line and breakpoints | |
| now that we might have content for that line. | |
| (WebInspector.TextEditor.prototype.get executionLineNumber): | |
| (WebInspector.TextEditor.prototype.set executionLineNumber): | |
| (WebInspector.TextEditor.prototype.setBreakpointInfoForLine): | |
| (WebInspector.TextEditor.prototype._updateExecutionLine): Added. | |
| (WebInspector.TextEditor.prototype._addBreakpointToLineWithInfo): Added. | |
| (WebInspector.TextEditor.prototype._setBreakpointStylesOnLineWithInfo): Added. | |
| (WebInspector.TextEditor.prototype._removeBreakpointFromLine.updateStyles): Added. | |
| (WebInspector.TextEditor.prototype._removeBreakpointFromLine): Added. | |
| (WebInspector.TextEditor.prototype._gutterMouseDown): Added. | |
| (WebInspector.TextEditor.prototype._documentMouseMoved): Added. | |
| (WebInspector.TextEditor.prototype._documentMouseUp): Added. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Hook up search using CodeMirror. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch): Move off of textContent and AttributedString. | |
| Use addSearchResults instead of the individual addSearchResultRange. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor .bouncy-highlight): Added. | |
| (@-webkit-keyframes text-editor-bouncy): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.performSearch): Create a search cursor. | |
| (WebInspector.TextEditor.prototype.performSearch.batchSearch): Use the search cursor to find matches in | |
| the slow path. Stop using _textContent. | |
| (WebInspector.TextEditor.prototype.addSearchResults): Renamed from addSearchResultRange. | |
| (WebInspector.TextEditor.prototype.addSearchResults.markRanges): Added. Mark the ranges in a CodeMirror | |
| operation to get better performance. | |
| (WebInspector.TextEditor.prototype.searchCleared): Clear the marked text ranges. | |
| (WebInspector.TextEditor.prototype.revealPreviousSearchResult): Call _revealSearchResult. | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): Ditto. | |
| (WebInspector.TextEditor.prototype.line): Added. | |
| (WebInspector.TextEditor.prototype._revealSearchResult): Added. | |
| (WebInspector.TextEditor.prototype._revealSearchResult.animationEnded): Added. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Hook up the basics of CodeMirror in TextEditor. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorLineContentUpdated): Removed. | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: Added CodeMirror selectors. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .CodeMirror): Added. Reset box-sizing to content-box. | |
| (.text-editor > .CodeMirror *): Added. Ditto. | |
| (.text-editor > .CodeMirror .CodeMirror-lines): Added. | |
| (.text-editor > .CodeMirror pre): Added. | |
| (.text-editor > .CodeMirror .CodeMirror-selected): Added. | |
| (.text-editor > .CodeMirror .CodeMirror-focused .CodeMirror-selected): Added. | |
| (.text-editor > .CodeMirror textarea): Added. Prevent pointer events to make right | |
| click Inspect Element hit the line instead of the input area. | |
| (.text-editor > .CodeMirror .CodeMirror-gutters): Added. | |
| (.text-editor > .CodeMirror .CodeMirror-linenumber): Added. | |
| (.text-editor > .CodeMirror .highlighted): Added. | |
| (@-webkit-keyframes text-editor-highlight-fadeout): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get string): | |
| (WebInspector.TextEditor.prototype.set string): | |
| (WebInspector.TextEditor.prototype.get selectedTextRange): | |
| (WebInspector.TextEditor.prototype.set selectedTextRange): | |
| (WebInspector.TextEditor.prototype.get mimeType): | |
| (WebInspector.TextEditor.prototype.set mimeType): | |
| (WebInspector.TextEditor.prototype.revealLine): Set the cursor position and highlight the line. | |
| (WebInspector.TextEditor.prototype.updateLayout): Call refresh to let CodeMirror know we might have changed size. | |
| (WebInspector.TextEditor.prototype.shown): Ditto. | |
| (WebInspector.TextEditor.prototype._textRangeFromCodeMirrorPosition): Added. | |
| (WebInspector.TextEditor.prototype._codeMirrorPositionFromTextRange): Added. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Remove TextEditor implementation and supporting classes for syntax highlighting. | |
| Rubber-stamped by Jon Honeycutt. | |
| * UserInterface/AttributedString.js: Removed. | |
| * UserInterface/CSSSourceTokenizer.js: Removed. | |
| * UserInterface/HTMLSourceTokenizer.js: Removed. | |
| * UserInterface/JavaScriptSourceTokenizer.js: Removed. | |
| * UserInterface/Main.html: Removed deleted files. | |
| * UserInterface/ScriptContentView.js: | |
| * UserInterface/SourceTokenizer.js: Removed. | |
| * UserInterface/SyntaxHighlighter.js: Removed. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.syntaxHighlightStringAsDocumentFragment): Cleared. | |
| * UserInterface/TextContent.js: Removed. | |
| * UserInterface/TextEditor.css: Removed most rules. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Cleared. | |
| (WebInspector.TextEditor.prototype.get string): Cleared. | |
| (WebInspector.TextEditor.prototype.set string): Cleared. | |
| (WebInspector.TextEditor.prototype.get selectedTextRange): Cleared. | |
| (WebInspector.TextEditor.prototype.set selectedTextRange): Cleared. | |
| (WebInspector.TextEditor.prototype.get mimeType): Cleared. | |
| (WebInspector.TextEditor.prototype.set mimeType): Cleared. | |
| (WebInspector.TextEditor.prototype.get executionLineNumber): Cleared. | |
| (WebInspector.TextEditor.prototype.set executionLineNumber): Cleared. | |
| (WebInspector.TextEditor.prototype.performSearch.batchSearch): Cleared. | |
| (WebInspector.TextEditor.prototype.performSearch): Cleared. | |
| (WebInspector.TextEditor.prototype.addSearchResultRange): Cleared. | |
| (WebInspector.TextEditor.prototype.searchCleared): Cleared. | |
| (WebInspector.TextEditor.prototype.revealPreviousSearchResult): Cleared. | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): Cleared. | |
| (WebInspector.TextEditor.prototype.revealLine): Cleared. | |
| (WebInspector.TextEditor.prototype.updateLayout): Cleared. | |
| (WebInspector.TextEditor.prototype.shown): Cleared. | |
| (WebInspector.TextEditor.prototype.hidden): Cleared. | |
| (WebInspector.TextEditor.prototype.setBreakpointInfoForLine): Cleared. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get scrollableElements): Removed. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Extend CodeMirror to allow syntax highlighting styles based on the mode. | |
| By default CodeMirror defines syntax highlighting styles based on token | |
| only and shared styles between modes. This limiting and does not match | |
| what we have done in the Web Inspector. So this modifies the XML, CSS | |
| and JavaScript modes to supply two styles for each token. One for the | |
| token and one with the mode name. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CodeMirrorAdditions.js: Added. | |
| * UserInterface/Main.html: Included CodeMirrorAdditions.js. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Define extra MIME-types for CodeMirror's syntax highlighting modes. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Define extra MIME-types for XML, HTML, SVG, | |
| JSON and JavaScript. | |
| 2012-11-30 Timothy Hatcher <timothy@apple.com> | |
| Update CodeMirror from 3.0 beta 2 to 3.0 release candidate 2. | |
| Rubber-stamped by Jon Honeycutt. | |
| * UserInterface/External/CodeMirror/codemirror.css: Updated. | |
| * UserInterface/External/CodeMirror/codemirror.js: Updated. | |
| * UserInterface/External/CodeMirror/htmlmixed.js: Updated. | |
| * UserInterface/External/CodeMirror/javascript.js: Updated. | |
| * UserInterface/External/CodeMirror/matchbrackets.js: Updated. | |
| * UserInterface/External/CodeMirror/xml.js: Updated. | |
| 2012-11-22 Timothy Hatcher <timothy@apple.com> | |
| Fix a perl script error that was preventing resources from being | |
| copied on production builds. | |
| Perl thought the [\t ] that followed $tagExpression meant that | |
| tagExpression should be @tagExpression. | |
| * Scripts/combine-resources.pl: | |
| (concatinateFiles): Split the replacementExpression string into parts | |
| and concat it to prevent this. Fix a typo too. | |
| 2012-11-18 Timothy Hatcher <timothy@apple.com> | |
| Include CodeMirror in the Web Inspector. | |
| This also teaches the scripts we use to copy the CodeMirror resources and skip them | |
| when we concatenate our scripts/styles. | |
| Rubber-stamped by Antoine Quint. | |
| * Scripts/combine-resources.pl: | |
| (concatinateFiles): Skip External files. Smartly replace the first concatenated file's tag | |
| so we don't mix the order of style and script loading. | |
| * Scripts/copy-user-interface-resources.sh: | |
| * UserInterface/Main.html: Included CodeMirror files. | |
| 2012-11-18 Timothy Hatcher <timothy@apple.com> | |
| Add CodeMirror to the Web Inspector. | |
| Open Source Software use approved by Joyce Chow on 11/16/2012. | |
| Part of: <rdar://problem/3143094> Edit-mode for resources (local substation of resources) (16440) | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/External/CodeMirror/LICENSE: Added. | |
| * UserInterface/External/CodeMirror/codemirror.css: Added. | |
| * UserInterface/External/CodeMirror/codemirror.js: Added. | |
| * UserInterface/External/CodeMirror/css.js: Added. | |
| * UserInterface/External/CodeMirror/htmlmixed.js: Added. | |
| * UserInterface/External/CodeMirror/javascript.js: Added. | |
| * UserInterface/External/CodeMirror/matchbrackets.js: Added. | |
| * UserInterface/External/CodeMirror/overlay.js: Added. | |
| * UserInterface/External/CodeMirror/runmode.js: Added. | |
| * UserInterface/External/CodeMirror/searchcursor.js: Added. | |
| * UserInterface/External/CodeMirror/xml.js: Added. | |
| 2012-11-17 Timothy Hatcher <timothy@apple.com> | |
| Hide the toolbar labels if there isn't enough room to show them. | |
| Reviewed by Brady Eidson. | |
| * UserInterface/ButtonToolbarItem.css: | |
| (.toolbar.collapsed .item.button > .label): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added event listener for window resize. | |
| (WebInspector._windowResized): Added. Update the toolbar layout. | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype.set displayMode): Update the toolbar layout. | |
| (WebInspector.Toolbar.prototype.set sizeMode): Ditto. | |
| 2012-11-17 Timothy Hatcher <timothy@apple.com> | |
| Keep toolbar items in constant positions as items are added or removed. | |
| This keeps centered items in the center and adds the items on the right in reverse | |
| order since right most items are more stable as context changes. Also vertically stack | |
| the close and undock button if the toolbar is tall enough to fit them. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ControlToolbarItem.css: | |
| (.toolbar .item.control): | |
| (.toolbar.small-size .item.control): | |
| (.toolbar.icon-only .item.control): | |
| (.toolbar .item.control:hover): | |
| (.toolbar .item.control:active): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Use addToolbarItem instead of addNavigationItem. Add the | |
| detail sidebar items in reverse order. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.addNavigationItem): Added parentElement argument. | |
| (WebInspector.NavigationBar.prototype.insertNavigationItem): Added parentElement argument. | |
| Use the nextSibling only if it is in the same parent element. | |
| (WebInspector.NavigationBar.prototype.removeNavigationItem): Use remove to remove the element. | |
| * UserInterface/Toolbar.css: | |
| (.toolbar .control-section): Added. | |
| (.toolbar.label-only .control-section): Added. | |
| (.toolbar .item-section): Added. | |
| (.toolbar .item-section:not(.center)): Added. | |
| (.toolbar .item-section.left): Added. | |
| (.toolbar .item-section.center): Added. | |
| (.toolbar .item-section.right): Added. | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar): Create the four sections. | |
| (WebInspector.Toolbar.prototype.addToolbarItem): Added. | |
| * UserInterface/Utilities.js: | |
| (Element.prototype.remove): Added only if the engine does not have it. This is needed | |
| for iAd Producer, which uses an older WebKit. | |
| 2012-11-17 Timothy Hatcher <timothy@apple.com> | |
| Change ".navigation-bar > .item" and ".toolbar > .item" selectors into ".navigation-bar .item" | |
| and ".toolbar .item" so we can have intermediary elements between the bar and item. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ActivateButtonNavigationItem.js: | |
| (WebInspector.ActivateButtonNavigationItem.prototype.generateStyleText): | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar .item.button): | |
| (.navigation-bar .item.button > .glyph): | |
| (body.window-inactive .navigation-bar .item.button:not(.suppress-emboss) > .glyph): | |
| (.navigation-bar .item.button.disabled > .glyph): | |
| (body.window-inactive .navigation-bar .item.button.disabled:not(.suppress-emboss) > .glyph): | |
| (.navigation-bar .item.button.suppress-emboss > .glyph): | |
| (.navigation-bar .item.button.suppress-emboss:active > .glyph): | |
| (.navigation-bar .item.button.suppress-emboss.disabled > .glyph): | |
| (.navigation-bar .item.button:not(.disabled):not(.radio):not(.suppress-bezel):active): | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): | |
| * UserInterface/ButtonToolbarItem.css: | |
| (.toolbar .item.button): | |
| (.toolbar.icon-and-label-vertical .item.button): | |
| (.toolbar.icon-and-label-horizontal .item.button): | |
| (.toolbar .item.button > .glyph): | |
| (.toolbar.small-size .item.button > .glyph): | |
| (.toolbar.label-only .item.button > .glyph): | |
| (.toolbar .item.button > .label): | |
| (.toolbar.label-only .item.activate.button.activated > .label): | |
| (.toolbar.icon-and-label-horizontal .item.button > .label): | |
| * UserInterface/ControlToolbarItem.css: | |
| (.toolbar .item.control): | |
| (.toolbar .item.control:hover): | |
| (.toolbar .item.control:active): | |
| (.toolbar .item.control > .glyph): | |
| (body.window-inactive .toolbar .item.control): | |
| (body.window-inactive .toolbar .item.control.disabled): | |
| * UserInterface/DividerNavigationItem.css: | |
| (.navigation-bar .item.divider): | |
| * UserInterface/FlexibleSpaceNavigationItem.css: | |
| (.toolbar .item.flexible-space): | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar .item): | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| (.navigation-bar .item.radio.button): | |
| (.navigation-bar.collapsed .item.radio.button): | |
| (.navigation-bar .item.radio.button.selected): | |
| (.navigation-bar.collapsed .item.radio.button.selected): | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): | |
| * UserInterface/Toolbar.css: | |
| (.toolbar .control-section): | |
| 2012-11-17 Timothy Hatcher <timothy@apple.com> | |
| Make the close and undock buttons in the docked Web Inspector better match | |
| the style of the undock button and the iTunes 11 mini-player controls. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ControlToolbarItem.css: | |
| (.toolbar > .item.control): 50% opacity. | |
| (.toolbar > .item.control:hover): Added. 90% opacity. | |
| (.toolbar > .item.control:active): Added. 100% opacity. | |
| (body.window-inactive .toolbar > .item.control): 35% opacity. | |
| (.toolbar > .item.control.disabled): 35% opacity. | |
| (body.window-inactive .toolbar > .item.control.disabled): 20% opacity. | |
| * UserInterface/Images/Undock.pdf: Rounded the corners a bit. | |
| 2012-11-16 Timothy Hatcher <timothy@apple.com> | |
| Renamed the Breakpoint sidebar to Debugger and give it a new icon. | |
| Also removed unused images from previous sidebar panels. | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DebuggerSidebarPanel.js: Renamed from WebInspector/UserInterface/BreakpointSidebarPanel.js. | |
| (WebInspector.DebuggerSidebarPanel): Updated the keyboard shortcut to be Control-3. | |
| * UserInterface/Images/NavigationItemBreakpoint.pdf: Removed. | |
| * UserInterface/Images/NavigationItemBug.pdf: Added. | |
| * UserInterface/Images/NavigationItemFunction.pdf: Removed. | |
| * UserInterface/Images/NavigationItemThreads.pdf: Removed. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Updated the keyboard shortcut to be Control-2. | |
| * UserInterface/Main.html: Renamed BreakpointSidebarPanel to DebuggerSidebarPanel. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Ditto. | |
| (WebInspector._debuggerDidPause): Ditto. | |
| 2012-11-16 Timothy Hatcher <timothy@apple.com> | |
| Merge the Debug sidebar panel into Breakpoints sidebar panel. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Added CallFramesDidChange event listener. Create the content tree | |
| outline and section for the Call Stack. | |
| (WebInspector.BreakpointSidebarPanel.prototype._debuggerCallFramesDidChange): Added. | |
| (WebInspector.BreakpointSidebarPanel.prototype._treeElementSelected): Support CallFrameTreeElement. | |
| * UserInterface/DebugSidebarPanel.js: Removed. | |
| * UserInterface/Main.html: Removed DebugSidebarPanel. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Removed DebugSidebarPanel. | |
| (WebInspector._debuggerDidPause): Show the BreakpointSidebarPanel instead. | |
| 2012-11-16 Timothy Hatcher <timothy@apple.com> | |
| Place breakpoints into a section in preparation of merging the Debug and Breakpoints sidebars. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Store contentTreeOutline as _breakpointsContentTreeOutline. | |
| Make a DetailsSection and put the content tree in its only row. | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Use _breakpointsContentTreeOutline. | |
| (WebInspector.BreakpointSidebarPanel.prototype._scriptsCleared): Ditto. | |
| (WebInspector.BreakpointSidebarPanel.prototype._breakpointRemoved): Ditto. | |
| 2012-11-13 Timothy Hatcher <timothy@apple.com> | |
| Make dragging the Web Inspector window in the toolbar move the window. | |
| <rdar://problem/12688599> Should be able to drag to move Web Inspector window from empty parts of toolbar | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Changed mousedown event listener to _toolbarMouseDown. | |
| (WebInspector._toolbarMouseDown): Added. Call _moveWindowMouseDown or _dockedResizerMouseDown. | |
| (WebInspector._moveWindowMouseDown): Added. | |
| (WebInspector._moveWindowMouseDown.toolbarDrag): Added. | |
| (WebInspector._moveWindowMouseDown.toolbarDragEnd): Added. | |
| 2012-11-13 Jeff Miller <jeffm@apple.com> | |
| Regenerated localizedStrings.js, which was out-of-date. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2012-11-13 Timothy Hatcher <timothy@apple.com> | |
| Disable sub-pixel antialiasing in the Web Inspector toolbar when in window mode. | |
| This portion of the window has no background (showing the window chrome). So text rendered | |
| here does not look good when sub-pixel antialiased. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Toolbar.css: | |
| (body:not(.docked) .toolbar): Added. Set -webkit-font-smoothing: antialiased. | |
| 2012-11-12 Timothy Hatcher <timothy@apple.com> | |
| Don't show the dock button in the toolbar now that it is in the window title bar. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.setDockingUnavailable): Empty stub now. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Changed the dock toggle into an undock button. | |
| (WebInspector.updateDockedState): Removed use of dockToggleButtonNavigationItem. | |
| Removed call to _updateDockToggleButtonVisibility. | |
| (WebInspector.setDockingUnavailable): Removed. | |
| (WebInspector._updateDockToggleButtonVisibility): Removed. | |
| (WebInspector._undock): Renamed from _toggleDockedState. Only undock now. | |
| (WebInspector._updateDockNavigationItems): Update undockButtonNavigationItem too. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Give WebInspector.ContentBrowser the ability to not have back and forward buttons. | |
| This will be used for the ContentBrowser in the quick console area. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Added disableBackForward argument. Don't create the buttons | |
| or keyboard shortcuts if disableBackForward is true. | |
| (WebInspector.ContentBrowser.prototype._updateBackForwardButtons): Return early if the buttons | |
| don't exist and there is nothing to update. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Fix some flashing while scrolling the Web Inspector when docked. | |
| When docked the toolbar isn't transparent, so we can have a background | |
| on the body which fixes the flashing. This isn't an issue in when undocked. | |
| This also isn't an issue with accelerated composting, which we should turn | |
| on for the Inspector in <rdar://problem/12676223>. | |
| Reviewed by Anders Carlsson. | |
| * UserInterface/Main.css: | |
| (body.docked): Set the background-color to white. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception that was causing the Web Inspector to fail when trying to debug a script. | |
| The fact that we don't know about a script in a call frame is really a deeper bug. But this | |
| at least makes things gracefully keep working. The deeper issue is <rdar://problem/12679475>. | |
| <rdar://problem/12676344> Web Inspector gets stuck trying to debug an exception | |
| Reviewed by Dean Jackson. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): Continue if the SourceCodeLocation | |
| ended up being null. This prevents an exception later. | |
| (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload): Return null if | |
| the script was not found. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Remove the Log navigation sidebar. | |
| Create a single LogContentView to be shown for the console. Previous sessions are now shown | |
| inline like the quick console (with a divider between them). | |
| The ultimate goal here is to merge the quick console and the full height console. | |
| Reviewed by Dean Jackson. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showConsole): Call WebInspector.showConsoleView. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Add event listeners that were in LogSidebarPanel. | |
| (WebInspector.LogContentView.prototype.shown): Removed disabled check. | |
| (WebInspector.LogContentView.prototype._sessionsCleared): Added. | |
| (WebInspector.LogContentView.prototype._sessionStarted): Added. | |
| (WebInspector.LogContentView.prototype._messageAdded): Added. | |
| (WebInspector.LogContentView.prototype._previousMessageRepeatCountUpdated): Added. | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): Removed disabled check. | |
| (WebInspector.LogContentView.prototype._activeLogCleared): Ditto. | |
| (WebInspector.LogContentView.prototype._clearLog): Ditto. | |
| * UserInterface/LogSidebarPanel.js: Removed. | |
| * UserInterface/LogTreeElement.js: | |
| (WebInspector.LogTreeElement): Change "Current Log" to "Console". | |
| * UserInterface/Main.html: Removed LogSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Removed LogSidebarPanel use. Create a Console toolbar button. | |
| Handle the last content cookie for the console. | |
| (WebInspector.sidebarPanelForRepresentedObject): Return null for the console. | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Return the special tree element | |
| for the console. | |
| (WebInspector.showConsoleView): Added. | |
| (WebInspector._updateCurrentContentViewCookie): Set a special cookie for the console view. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Add reload and inspect toolbar buttons. | |
| <rdar://problem/11187904> REGRESSION (Safari 6): Inspect node button should always be available | |
| Reviewed by Dean Jackson. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Removed _inspectModeButtonNavigationItem. | |
| (WebInspector.FrameContentView.prototype.get navigationItems): Ditto. | |
| * UserInterface/Images/Reload.pdf: Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create the reload and inspect toolbar buttons. | |
| (WebInspector._inspectModeStateChanged): Added. | |
| (WebInspector._toggleInspectMode): Added. | |
| (WebInspector._reloadPageClicked): Added. | |
| 2012-11-11 Timothy Hatcher <timothy@apple.com> | |
| Use sticky positioning for the section headers in the Details sidebar. | |
| To make this work I had to dynamically generate style rules based on the | |
| current height of the toolbar (now that it is dynamic). Kind of gross, but | |
| the end result is really nice! | |
| While I was at it I bumped the height of the headers to 23px to match the | |
| other bars. That way when they are at the top everything lines up nicely. | |
| <rdar://problem/12611547> Consider using sticky positioning for sidebar section headers | |
| Reviewed by Dean Jackson. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header): Bump the height and padding up. | |
| * UserInterface/Main.js: | |
| (WebInspector.updateDockedState): Call _updateStickyPostionStyles. | |
| (WebInspector._updateStickyPostionStyles): Added. | |
| (WebInspector._toolbarDisplayModeDidChange): Call _updateStickyPostionStyles. | |
| (WebInspector._toolbarSizeModeDidChange): Ditto. | |
| * UserInterface/Utilities.js: | |
| (Element.prototype.totalOffsetLeft): Use getBoundingClientRect for better results. | |
| (Element.prototype.totalOffsetTop): Ditto. | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Don't deselect the selected row when refreshing the Network data grid. | |
| This preserves selection during refreshes that happen while loading the page. | |
| It also prevents notifying that the selectionPathComponents changed which causes | |
| the details sidebar to refresh and hide because there was no selection. | |
| <rdar://problem/12603744> Details sidebar auto-closes while trying to read it on a loading page | |
| Reviewed by Dean Jackson. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._selectedNodeChanged): Return early if _ignoreSelectionEvent. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsWithNewBounds): Save and restore the | |
| selectedNode if it was refreshed. | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid): Set _ignoreSelectionEvent while | |
| updating the data grid. | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Don't crossfade the indeterminate progress spinner. | |
| <rdar://problem/12676407> Web Inspector shouldn't cross-fade its "discrete" spinner | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/IndeterminateProgressSpinner.css: | |
| (.indeterminate-progress-spinner): Use -webkit-animation-timing-function: step-start. | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Prevent the details sidebar from ever being shown empty. | |
| This removes the setting to auto hide when empty and always hides when empty. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Removed _detailsSidebarAutoHideWhenEmptySetting and start the | |
| details sidebar out in the collapsed state. | |
| (WebInspector._sidebarCollapsedStateDidChange): Don't remember the collapsed state if | |
| _ignoreDetailsSidebarPanelCollapsedEvent is set. This is for ignoring programatic changes. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Removed _detailsSidebarAutoHideWhenEmptySetting. | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Don't draw a background on the toolbar when the window is inactive. | |
| We want to show through to the window chrome in this case too. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Toolbar.css: | |
| (body.window-inactive .toolbar): Removed background-image. | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Move the time bar to the bottom so the sidebar elements align with the timelines again. | |
| Now that the sidebars don't have a navigation bar, everything is shifted higher in the sidebar. | |
| This caused a misalignment in the timeline view. The best solution is to move the time bar to the | |
| bottom so the timeline overviews line up with the tree elements in the sidebar again. The Profiles | |
| sidebar header does not align with the data grid header anymore, but that does not matter as much. | |
| Maybe later we can add a summary or zoom slider to sidebar, shifting Profiles down again. | |
| To make the time bar not be as distracting the background is now white and the markers fade out. | |
| The fade points in the direction of the graph, up for the overview and down for the network graph. | |
| This prevents the lines from touching since the two time bars are now next to each other. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/NetworkDataGrid.css: | |
| (.network-timeline-decorations > .header): | |
| (.network-timeline-decorations > .header > .divider): | |
| (.network-timeline-decorations:not(.sort-active) > .header > .divider:last-child): | |
| (.network-timeline-decorations > .header > .divider > .label): | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations > .header): | |
| (.timeline-decorations > .header > .divider): | |
| (.timeline-decorations > .header > .divider:last-child): | |
| (.timeline-decorations > .header > .divider > .label): | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview): | |
| * UserInterface/Toolbar.css: | |
| 2012-11-10 Timothy Hatcher <timothy@apple.com> | |
| Merge the Storage sidebar into the Resources sidebar. | |
| Most of this is just copied from StorageSidebarPanel with trivial tweaks to work | |
| inside of ResourceSidebarPanel. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: | |
| (WebInspector.ApplicationCacheFrameTreeElement.prototype.updateTitles): | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.inspect): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector.sidebarPanelForRepresentedObject): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): | |
| (WebInspector.ResourceSidebarPanel.prototype.showContentViewForCookie.finalizeCookieChecking): | |
| (WebInspector.ResourceSidebarPanel.prototype.showContentViewForCookie): | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork): | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): | |
| (WebInspector.ResourceSidebarPanel.prototype._domNodeWasInspected): | |
| (WebInspector.ResourceSidebarPanel.prototype._checkStorageTreeElementAgainstPendingContentViewCookie): | |
| (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._domStorageObjectWasInspected): | |
| (WebInspector.ResourceSidebarPanel.prototype._databaseWasAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._databaseWasInspected): | |
| (WebInspector.ResourceSidebarPanel.prototype._cookieStorageObjectWasAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._frameManifestAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._frameManifestRemoved): | |
| (WebInspector.ResourceSidebarPanel.prototype._compareTreeElements): | |
| (WebInspector.ResourceSidebarPanel.prototype._addStorageChild): | |
| (WebInspector.ResourceSidebarPanel.prototype._storageCleared): | |
| * UserInterface/StorageSidebarPanel.js: Removed. | |
| 2012-11-09 Timothy Hatcher <timothy@apple.com> | |
| Remove the Issues sidebar. | |
| It might come back in some form in the new Debugger sidebar if there is demand. | |
| But it has proven to not be that helpful in its current form. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/IssueIcons.css: Removed. | |
| * UserInterface/IssueSidebarPanel.js: Removed. | |
| * UserInterface/IssueTreeElement.js: Removed. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-11-09 Timothy Hatcher <timothy@apple.com> | |
| Add placeholders to all the search and filter fields in the navigation sidebars. | |
| <rdar://problem/11113717> Two search-related fields in the Search sidebar is confusing | |
| Reviewed by Dan Bernstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): | |
| * UserInterface/FilterBar.js: | |
| (WebInspector.FilterBar.prototype.get placeholder): Added. | |
| (WebInspector.FilterBar.prototype.set placeholder): Added. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| 2012-11-09 Timothy Hatcher <timothy@apple.com> | |
| Merge the Search sidebar into the Resources sidebar. | |
| Most of this is just copied from SearchSidebarPanel with trivial tweaks to work | |
| inside of ResourceSidebarPanel. | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/ResourceSidebarPanel.css: Added. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| (WebInspector.ResourceSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholderSoon): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.updateEmptyContentPlaceholder): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourceCallback): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.resourcesCallback): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.domSearchResults): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch.domCallback): | |
| (WebInspector.ResourceSidebarPanel.prototype.performSearch): | |
| (WebInspector.ResourceSidebarPanel.prototype._searchFieldChanged): | |
| (WebInspector.ResourceSidebarPanel.prototype._searchTreeElementForResource): | |
| (WebInspector.ResourceSidebarPanel.prototype._focusSearchField): | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/SearchSidebarPanel.css: Removed. | |
| * UserInterface/SearchSidebarPanel.js: Removed. | |
| 2012-11-09 Timothy Hatcher <timothy@apple.com> | |
| Allow setting the contentTreeOutline of a WebInspector.NavigationSidebarPanel. | |
| This will allow one sidebar to manage multiple content trees, so we can merge | |
| Resources and Search into one. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Use createContentTreeOutline. | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineElement): Use .element. | |
| (WebInspector.NavigationSidebarPanel.prototype.set contentTreeOutline): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineToAutoPrune): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.createContentTreeOutline): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.show): Use contentTreeOutlineElement. | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources.delayedWork): Use the | |
| new contentTreeOutlineToAutoPrune property. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline): Set .element for public use. | |
| 2012-11-09 Nathan de Vries <ndevries@apple.com> | |
| Fix for <rdar://problem/11498628> Can inadvertently copy part of the UI | |
| when attempting to copy the Full URL of a resource | |
| Ensure that when a value in the details side pane is triple-tapped to | |
| select the whole value, the label from the following row is not included | |
| in the selection. | |
| The table-cell selection issue will be addressed properly in | |
| <rdar://problem/12668870> Triple-clicking text within a <div> set to | |
| "display: table-cell" selects text outside the cell | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DetailsSectionSimpleRow.js: | |
| (WebInspector.DetailsSectionSimpleRow): Add a click handler to the value | |
| cell and adjust the selection range on triple-click if it extends beyond | |
| the cell. | |
| 2012-11-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12526413> Compositing borders button does not work for iOS 6 (should be suppressed or dimmed) | |
| Reviewed by Jon Honeycutt. | |
| Disable the toggle compositing borders navigation button when debugging | |
| an iOS 6 device, which doesn't have backend support for it. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype._toggleCompositingBorders): | |
| (WebInspector.FrameContentView.prototype._updateCompositingBordersButtonToMatchPageSettings): | |
| 2012-11-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12462428> Make the Safari Curie Web Inspector compatible with iOS 6 | |
| Reviewed by Timothy Hatcher. | |
| In production builds be sure to copy over resources that are | |
| dynamically loaded in the frontend, and aren't explicitly loaded | |
| by Main.html. | |
| * Scripts/copy-user-interface-resources.sh: | |
| 2012-11-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12462428> Make the Safari Curie Web Inspector compatible with iOS 6 | |
| Reviewed by Timothy Hatcher. | |
| In this change the inspector frontend will load a backend commands file | |
| that is exactly compatible with the backend it is communicating with. | |
| When loading the frontend for a remote session the RWI frontend host | |
| can suggest a more specific InspectorBackendCommands file to load. | |
| For non-remote session, or non-legacy remote session | |
| the default InspectorBackendCommands.js file is loaded. | |
| This approach has some benefits: | |
| - loading the exact set of backend commands allows backend feature | |
| detection by simply checking if the "BackendAgent.<method>" exists. | |
| Therefore you immediately get errors if you use a backend agent | |
| method without feature detecting it. | |
| - by having Legacy InspectorBackendCommands files checked in it is | |
| easier to see exactly what an older version of iOS supported and | |
| when functions were added / removed. | |
| And drawbacks: | |
| - if a protocol message changes in some way (renamed params, gains or | |
| loses params, reorders params, changes to multiple methods, etc) we | |
| may need to do extra work to ensure compatibility with older devices. | |
| Like we've already seen with Database SQL handling. | |
| Timothy Hatcher already addressed all of the iOS 6 protocol changes so far. | |
| * UserInterface/LoadInspectorBackendCommands.js: Added. | |
| Load either the default InspectorBackendCommands.js or the one exposed | |
| by InspectorFrontendHost.inspectorBackendCommandsURL() in remote sessions. | |
| * UserInterface/Main.html: | |
| Remove InspectorBackendLegacyCommands, add in LoadInspectorBackendCommands. | |
| * UserInterface/InspectorBackendLegacyCommands.js: Removed. | |
| * UserInterface/Legacy/6.0/InspectorBackendCommands.js: Added. | |
| This is the complete InspectorBackendCommands supported by iOS 6. | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception that started happening in the Web Inspector, that broke everything. | |
| Revision 133862 of WebCore started looking for InspectorFrontendAPI.dispatchMessageAsync. | |
| So we need to implement thta method to make things work again. There are a few other | |
| methods that needed added to InspectorFrontendAPI too. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.contextMenuItemSelected): Added. | |
| (InspectorFrontendAPI.contextMenuCleared): Added. | |
| (InspectorFrontendAPI.dispatchMessageAsync): Added. | |
| (InspectorFrontendAPI.dispatchMessage): Added. | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Default to horizontal labels and small icons for the toolbar when docked. | |
| This also remembers the toolbar modes for docked and undocked if the user changes them. | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Listen for the new toolbar events and create the settings. | |
| (WebInspector.updateDockedState): Change the modes using the settings based on docked state. | |
| (WebInspector._toolbarDisplayModeDidChange): Added. Store the mode in the setting. | |
| (WebInspector._toolbarSizeModeDidChange): Added. Ditto. | |
| * UserInterface/Toolbar.js: | |
| (WebInspector.Toolbar.prototype.set displayMode): Fire the DisplayModeDidChange event. | |
| (WebInspector.Toolbar.prototype.set sizeMode): Fire the SizeModeDidChange event. | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception that was preventing console expression from evaluating. | |
| This exposed a deeper issue where we were not using the origin property for DOM storage | |
| objects and still looking for the host property. | |
| There also seems to be a backend issue where local storage is showing up twice. | |
| https://bugs.webkit.org/show_bug.cgi?id=101643 | |
| <rdar://problem/12656188> Can't evaluate expressions in the console on this npr.org page | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.addDOMStorage): Look for origin and parse | |
| the host out of it since our code still expects the host. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._compareTreeElementsByMainTitle): Assert | |
| that the mainTitle is not empty/null/undefined. Handle it anyway just in case. | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Update the Web Inspector strings for all the string changes in the last few revisions. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Add the sidebar panel toolbar items and dock controls to the toolbar. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._updateDockToggleButtonVisibility): | |
| (WebInspector._updateDockNavigationItems): | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Remove the toggle sidebar buttons and keyboard shortcuts. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._navigationSidebarPanelSelected): | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Don't have sidebars manage and display a NavigationBar anymore. | |
| This removes the navigation bar from Sidebar and makes each SidebarPanel have a toolbar item instead. | |
| To work with the toolbar item the display names and tooltips have been tweaked. The toolbar items | |
| are not used in the toolbar yet. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel): | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): | |
| * UserInterface/DetailsSidebarPanel.js: | |
| (WebInspector.DetailsSidebarPanel): | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): | |
| (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder): | |
| (WebInspector.NavigationSidebarPanel.prototype.hideEmptyContentPlaceholder): | |
| (WebInspector.NavigationSidebarPanel.prototype.updateEmptyContentPlaceholder): | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): | |
| (WebInspector.NavigationSidebarPanel.prototype.hidden): | |
| (WebInspector.NavigationSidebarPanel.prototype._updateToolbarItemVisibility): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel): | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): | |
| * UserInterface/Sidebar.css: | |
| (.sidebar > .panel): | |
| (.sidebar.right): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): | |
| (WebInspector.Sidebar.prototype.addSidebarPanel): | |
| (WebInspector.Sidebar.prototype.removeSidebarPanel): | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): | |
| (WebInspector.Sidebar.prototype.get minimumWidth): | |
| (WebInspector.Sidebar.prototype.set width): | |
| (WebInspector.Sidebar.prototype.set collapsed): | |
| * UserInterface/SidebarPanel.js: | |
| (WebInspector.SidebarPanel): | |
| (WebInspector.SidebarPanel.prototype.get toolbarItem): | |
| (WebInspector.SidebarPanel.prototype.get visible): | |
| (WebInspector.SidebarPanel.prototype.hide): | |
| (WebInspector.SidebarPanel.prototype.toggle): | |
| (WebInspector.SidebarPanel.prototype.added): | |
| (WebInspector.SidebarPanel.prototype.removed): | |
| (WebInspector.SidebarPanel.prototype.hidden): | |
| (WebInspector.SidebarPanel.prototype.visibilityDidChange): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Rename the QuickConsole toolbar style class so it does not conflict with the new Toolbar class. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .quick-console-toolbar): | |
| (.quick-console > .quick-console-toolbar > .text-prompt): | |
| (.quick-console > .quick-console-toolbar > .navigation-bar-container): | |
| (.quick-console > .quick-console-toolbar > .navigation-bar-container > .navigation-bar-spacer): | |
| (.quick-console > .quick-console-toolbar > .navigation-bar-container > .navigation-bar): | |
| (.quick-console > .quick-console-toolbar.scroll-divider): | |
| (.quick-console > .quick-console-toolbar > .text-prompt > .javascript-prompt): | |
| * UserInterface/QuickConsole.js: | |
| 2012-11-08 Timothy Hatcher <timothy@apple.com> | |
| Add a toolbar class and toolbar item classes to the Web Inspector. | |
| The toolbar and item inherits most of the functionality from the existing NavigationBar and ButtonNavigationItem. | |
| This also makes the toolbar be the resize area when docked. No items are added to the toolbar yet. | |
| Part of: | |
| <rdar://problem/10947541> Navigation bar buttons are too small | |
| <rdar://problem/12294575> Navigation bar button icons are difficult to identify | |
| <rdar://problem/12589291> Navigation bar buttons are unlabeled | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/ActivateButtonToolbarItem.js: Added. | |
| (WebInspector.ActivateButtonToolbarItem): | |
| (WebInspector.ActivateButtonToolbarItem.prototype.get label): | |
| (WebInspector.ActivateButtonToolbarItem.prototype.set label): | |
| * UserInterface/ButtonToolbarItem.css: Added. | |
| (.toolbar > .item.button): | |
| (.toolbar.icon-and-label-vertical > .item.button): | |
| (.toolbar.icon-and-label-horizontal > .item.button): | |
| (.toolbar > .item.button > .glyph): | |
| (.toolbar.small-size > .item.button > .glyph): | |
| (.toolbar.label-only > .item.button > .glyph): | |
| (.toolbar > .item.button > .label): | |
| (.toolbar.label-only > .item.activate.button.activated > .label): | |
| (.toolbar.icon-and-label-horizontal > .item.button > .label): | |
| (.toolbar.icon-only > .item.button > .label): | |
| (body.window-inactive .toolbar > .item.button): | |
| (.toolbar > .item.button.disabled): | |
| (body.window-inactive .toolbar > .item.button.disabled): | |
| * UserInterface/ButtonToolbarItem.js: Added. | |
| (WebInspector.ButtonToolbarItem): | |
| (WebInspector.ButtonToolbarItem.prototype.get label): | |
| (WebInspector.ButtonToolbarItem.prototype.set label): | |
| * UserInterface/ControlToolbarItem.css: Added. | |
| (.toolbar > .item.control): | |
| (.toolbar.icon-and-label-vertical > .item.control): | |
| (.toolbar > .item.control:not(.hidden) + .item.control): | |
| (.toolbar > .item.control > .glyph): | |
| (body.window-inactive .toolbar > .item.control > .glyph): | |
| (.toolbar > .item.control.disabled > .glyph): | |
| (body.window-inactive .toolbar > .item.control.disabled > .glyph): | |
| * UserInterface/ControlToolbarItem.js: Added. | |
| (WebInspector.ControlToolbarItem): | |
| * UserInterface/Main.css: | |
| (body): | |
| (#toolbar): | |
| (body.docked #toolbar): | |
| (body.docked #toolbar .item:not(.flexible-space)): | |
| (#main): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._reloadPageIgnoringCache): | |
| (WebInspector._copy): | |
| * UserInterface/ToggleControlToolbarItem.js: Added. | |
| (WebInspector.ToggleControlToolbarItem): | |
| * UserInterface/Toolbar.css: Added. | |
| (.toolbar): | |
| (.toolbar.icon-and-label-vertical): | |
| (.toolbar.icon-and-label-vertical.small-size): | |
| (.toolbar.icon-only): | |
| (.toolbar.label-only): | |
| (body.docked .toolbar): | |
| (body.window-inactive .toolbar): | |
| (.toolbar > .item): | |
| * UserInterface/Toolbar.js: Added. | |
| (WebInspector.Toolbar): | |
| (WebInspector.Toolbar.prototype.get displayMode): | |
| (WebInspector.Toolbar.prototype.set displayMode): | |
| (WebInspector.Toolbar.prototype.get sizeMode): | |
| (WebInspector.Toolbar.prototype.set sizeMode): | |
| (WebInspector.Toolbar.prototype._handleContextMenuEvent): | |
| (WebInspector.Toolbar.prototype._changeDisplayMode): | |
| (WebInspector.Toolbar.prototype._toggleSmallIcons): | |
| 2012-11-07 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector correctly reflect the docked state again. | |
| The query parameter changed in r133393. The front-end needs to look for the | |
| new dockSide parameter instead of docked. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Look for dockSide === "bottom". | |
| 2012-11-05 Timothy Hatcher <timothy@apple.com> | |
| Change the point to inspect button icon from a hand to a crosshair. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Use Crosshair.pdf instead of Hand.pdf. | |
| * UserInterface/Images/Crosshair.pdf: Added. | |
| * UserInterface/Images/Hand.pdf: Removed. | |
| 2012-11-04 Timothy Hatcher <timothy@apple.com> | |
| Fix the line numbers in the JavaScript & Events timeline; make them 0-based. | |
| The rest of the Web Inspector expects 0-based line numbers. But the line numbers in the | |
| JavaScript & Events timeline come in 1-based. We were displaying them correctly before, | |
| but clicking the go-to arrow would instead highlight the next line in the source. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): Correctly display the now | |
| 0-based line number. Also add the line number to the tooltip to match what we do elsewhere. | |
| (WebInspector.ScriptTimelineDataGridNode.prototype._goToResource): Only pass the lineNumber if it | |
| isn't the first line. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Subtract 1 from the line numbers | |
| coming in over the protocol before using them elsewhere in the Inspector. | |
| 2012-11-04 Timothy Hatcher <timothy@apple.com> | |
| Rename ContentView.keepElementsScrolledToTheBottom to ContentView.shouldKeepElementsScrolledToBottom. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get shouldKeepElementsScrolledToBottom): | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype._saveScrollPositionsForContentView): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.get shouldKeepElementsScrolledToBottom): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.get shouldKeepElementsScrolledToBottom): | |
| 2012-11-04 Timothy Hatcher <timothy@apple.com> | |
| Save and restore the timeline scroll positions when going back and forth between views. | |
| Reviewed by Dan Bernstein and Joseph Pecoraro. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.showTimelineForRecordType): Save and restore | |
| the scroll position when swapping the DataGrids. | |
| (WebInspector.TimelinesContentView.prototype.get scrollableElements): Added. | |
| (WebInspector.TimelinesContentView.prototype.get keepElementsScrolledToTheBottom): Added. | |
| 2012-11-04 Timothy Hatcher <timothy@apple.com> | |
| Show the Initiator for the layout and style events in the Layout and Rendering timeline. | |
| This removes the Area column to make room. | |
| <rdar://problem/10935408> PARITY (WebKit Web Inspector): Add initiator information to the timeline | |
| data grids (e.g. JS stacks for RecalcStyle, Layout and Painting) | |
| Reviewed by Ricky Mondello and Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CallFrame.js: | |
| (WebInspector.CallFrame): Added nativeCode parameter. Allow more null parameters in asserts. | |
| (WebInspector.CallFrame.prototype.get nativeCode): Ditto. | |
| * UserInterface/LayoutTimelineDataGridNode.js: | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): Removed "area" and added | |
| "initiatorCallFrame" support. | |
| * UserInterface/LayoutTimelineRecord.js: | |
| (WebInspector.LayoutTimelineRecord): Added callFrames parameter. | |
| (WebInspector.LayoutTimelineRecord.prototype.get callFrames): Added. | |
| (WebInspector.LayoutTimelineRecord.prototype.get initiatorCallFrame): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.createSourceCodeLocationLink): Added helper. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Build CallFrames from the | |
| record stack trace. | |
| (WebInspector.TimelineManager.prototype._callFramesFromPayload): Added. | |
| (WebInspector.TimelineManager.prototype._callFramesFromPayload.createCallFrame): Added. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid td .subtitle): Added. | |
| (.content-view.timelines > .data-grid:focus tr.selected td .subtitle): Added. | |
| (.content-view.timelines > .data-grid td .icon): Simplified selector to work with any column. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Added Initiator column. | |
| (WebInspector.TimelinesContentView.prototype._sortComparator): Added support for comparing CallFrame. | |
| 2012-11-03 Timothy Hatcher <timothy@apple.com> | |
| Rename ScriptLocation to SourceCodeLocation so it can be reused for more generic stack traces. | |
| Rubber-stamped by Dan Bernstein. | |
| * UserInterface/CallFrame.js: | |
| (WebInspector.CallFrame): | |
| (WebInspector.CallFrame.prototype.get sourceCodeLocation): | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): | |
| (WebInspector.DebuggerManager.prototype._sourceCodeLocationFromPayload): | |
| * UserInterface/Main.html: | |
| * UserInterface/SourceCodeLocation.js: Renamed from WebInspector/UserInterface/ScriptLocation.js. | |
| (WebInspector.SourceCodeLocation): | |
| (WebInspector.SourceCodeLocation.prototype.get sourceCode): | |
| (WebInspector.SourceCodeLocation.prototype.get lineNumber): | |
| (WebInspector.SourceCodeLocation.prototype.get columnNumber): | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): | |
| (WebInspector.SourceCodeTextEditor.prototype._matchesSourceCodeLocation): | |
| 2012-11-03 Timothy Hatcher <timothy@apple.com> | |
| Start showing "Invalidate Styles" and "Invalidate Layout" in the Layout and Rendering timeline. | |
| These records will be the one showing the initiator (back trace) information. | |
| Part of: <rdar://problem/10935408> PARITY (WebKit Web Inspector): Add initiator information to the timeline | |
| data grids (e.g. JS stacks for RecalcStyle, Layout and Painting) | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/LayoutTimelineRecord.js: | |
| (WebInspector.LayoutTimelineRecord.EventType.displayName): Support InvalidateStyles and InvalidateLayout. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Handle "ScheduleStyleRecalculation" | |
| and "InvalidateLayout" and create records for them. | |
| 2012-11-03 Timothy Hatcher <timothy@apple.com> | |
| Round width and height in the metrics sidebar to the nearest hundredth. | |
| Width and height were missed when the other metrics started to be rounded. This also fixes | |
| editing by using the unrounded value instead of keeping the tilde. Also append "px" when | |
| updating the style if there is a decimal value. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement): Added. Moved from | |
| the createBoxPartElement function. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createBoxPartElement): Use createElement. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaWidthElement): Renamed | |
| from getContentAreaWidthPx. Use createElement. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createContentAreaHeightElement): Renamed | |
| from getContentAreaHeightPx. Use createElement. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): Use createContentAreaWidthElement | |
| and createContentAreaHeightElement instead. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._startEditing): If the target element has a title use | |
| it as the editing value since the current text is likely truncated/rounded. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._applyUserInput): Account for decimals values. | |
| 2012-11-03 Timothy Hatcher <timothy@apple.com> | |
| Clear the quick console when navigating to another page. | |
| When reloading the same page we insert a divider. | |
| <rdar://problem/11194811> Quick Console does not clear on navigation/refresh | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup): Added newSession parameter and style class. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Removed group creation and call startNewSession. | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): Call startNewSession passing true. | |
| (WebInspector.JavaScriptLogViewController.prototype.startNewSession): Added. Moved parts | |
| from clear and the constructor. | |
| * UserInterface/LogContentView.css: | |
| (.console-messages > .console-group:last-of-type .console-user-command): Added. | |
| (.console-message, .console-user-command): Removed border-bottom. | |
| (.console-message:not(:last-child), .console-user-command:not(:last-child)): Added. | |
| (.console-group:not(:first-child)): Added. | |
| (.console-group.new-session): Added. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._activeLogCleared): Check isWaitingForResult | |
| to make sure this was the console that requested the clear. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .toolbar): Added shadow to look like a border on the toolbar. This | |
| is needed now that the last console message does not have a bottom-border. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.didClearMessages): Clear _lastMessage and _lastMessageIgnored. | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): Check isWaitingForResult | |
| to make sure this was the console that requested the clear. | |
| (WebInspector.QuickConsole.prototype._previousMessageRepeatCountUpdated): | |
| (WebInspector.QuickConsole.prototype._logsCleared): Added. | |
| (WebInspector.QuickConsole.prototype._sessionStarted): Added. | |
| 2012-10-31 Timothy Hatcher <timothy@apple.com> | |
| Don't show 'undefined' in the console after sending the clear() command. | |
| Reviewed by Ada Chan. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Set _cleared to true. | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): Ditto. | |
| (WebInspector.JavaScriptLogViewController.prototype.printResult): Return early if _cleared. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Set _cleared to false. | |
| 2012-10-31 Timothy Hatcher <timothy@apple.com> | |
| Allow independently clearing either the log view or the quick console. | |
| This fixes up the clearing process and mostly decouples it from LogManager. | |
| The ActiveLogCleared event is now only used to honor the clear() command. | |
| This also adds the Clear Log context menu item to the Quick Console. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): Focus the prompt | |
| and call the new didClearMessages delegate function. | |
| (WebInspector.JavaScriptLogViewController.prototype._requestClearMessages): Removed. | |
| (WebInspector.JavaScriptLogViewController.prototype._promptKeyDown): Call clear | |
| instead of _requestClearMessages. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.didClearMessages): Added. Tell LogManager. | |
| (WebInspector.LogContentView.prototype._activeLogCleared): Only clear this log if | |
| it is being used at the time. | |
| (WebInspector.LogContentView.prototype._clearLog): Call clear instead of requestClearMessages. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype.didClearMessages): Added. | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): Set _cleared to false. | |
| (WebInspector.QuickConsole.prototype._viewContainerHandleContextMenuEvent): Added Clear Log | |
| context menu item. | |
| (WebInspector.QuickConsole.prototype._clearLog): Added. | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): Only clear this log if it is | |
| being used at the time. Move code from here to didClearMessages. | |
| (WebInspector.QuickConsole.prototype._messageAdded): Even if we show the message, | |
| remember it in case we get an updated repeat count later. | |
| (WebInspector.QuickConsole.prototype._previousMessageRepeatCountUpdated): | |
| 2012-10-31 Timothy Hatcher <timothy@apple.com> | |
| Add an option to make the Quick Console only show messages while actively debugging. | |
| This adds a context menu item to toggle the option. When "Always Show Console Messages" | |
| is unchecked then console messages will only show when evaluating and expression or | |
| stepping through code in the debugger. The default is to always show messages. | |
| <rdar://problem/11194915> REGRESSION (Safari 6): Console messages are not echoed to Quick Console | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype.isWaitingForResult): Added. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand): Set _waitingForResult. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand.printResult): Clear _waitingForResult. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Added event listeners for the contextmenu event. | |
| (WebInspector.QuickConsole.prototype._viewContainerHandleContextMenuEvent): Added. Create and | |
| show the context menu with the new option. | |
| (WebInspector.QuickConsole.prototype._toggleAlwaysShowConsoleMessages): Added. Toggle the setting. | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): Clear the ignored emssage. | |
| (WebInspector.QuickConsole.prototype._shouldAddNewMessage): Added. | |
| (WebInspector.QuickConsole.prototype._messageAdded): Check _shouldAddNewMessage before appending. | |
| Squirrel away the ignored message incase we need to show it later. | |
| (WebInspector.QuickConsole.prototype._previousMessageRepeatCountUpdated): Check _shouldAddNewMessage. | |
| Appended the squirreled away the ignored message first. | |
| 2012-10-30 Timothy Hatcher <timothy@apple.com> | |
| Remember and restore the console history between page reloads and Web Inspector sessions. | |
| <rdar://problem/11343640> REGRESSION (Safari 6): Log panel console history of commands | |
| (up/down arrows) lost after page navigation | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Create the setting and initialize the prompt. | |
| (WebInspector.JavaScriptLogViewController.prototype.printResult): Update the history setting | |
| with the last 30 commands. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Pass a history setting identifier. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Ditto. | |
| 2012-10-30 Timothy Hatcher <timothy@apple.com> | |
| Echo console messages to the Web Inspector's quick console. | |
| <rdar://problem/11194915> REGRESSION (Safari 6): Console messages are not echoed to Quick Console | |
| Reviewed by Ada Chan. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Listen for MessageAdded and PreviousMessageRepeatCountUpdated. | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): Only auto expand and scroll down | |
| for result messages. | |
| (WebInspector.QuickConsole.prototype._messageAdded): Added. Call through. | |
| (WebInspector.QuickConsole.prototype._previousMessageRepeatCountUpdated): Added. Call through. | |
| 2012-10-30 Timothy Hatcher <timothy@apple.com> | |
| Make JavaScriptLogViewController keep track of the previous message and repeat counts. | |
| Part of: <rdar://problem/11194915> REGRESSION (Safari 6): Console messages are not echoed to Quick Console | |
| Reviewed by Ada Chan. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Don't store _messages, it wasn't used. Added _previousMessage | |
| and _repeatCountWasInterrupted. | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): Reset _previousMessage and _repeatCountWasInterrupted. | |
| (WebInspector.JavaScriptLogViewController.prototype.appendConsoleMessage): Clone the message since there might be | |
| multiple clients using the message, and since the message has a DOM element it can't be two places at once. | |
| (WebInspector.JavaScriptLogViewController.prototype.updatePreviousMessageRepeatCount): Added. Moved from LogManager. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand): Pass true to _appendConsoleMessage to set the | |
| _repeatCountWasInterrupted flag and not set _previousMessage. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand.printResult): Ditto. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Set _repeatCountWasInterrupted and only | |
| set _previousMessage when repeatCountWasInterrupted is false. Don't store _messages, it wasn't used. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.updatePreviousMessageRepeatCount): Added. Call through. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager): Remove initialize call. | |
| (WebInspector.LogManager.prototype.initialize): Removed. Not needed. | |
| (WebInspector.LogManager.prototype.messageWasAdded): Dispatch the message in an object, not as data directly. | |
| Assert the message was not used directly, it should be cloned. | |
| (WebInspector.LogManager.prototype.messagesCleared): Removed call to initialize. | |
| (WebInspector.LogManager.prototype.messageRepeatCountUpdated): MOved to JavaScriptLogViewController. | |
| Fire PreviousMessageRepeatCountUpdated event instead. | |
| (WebInspector.LogManager.prototype._mainResourceDidChange): Removed initialize call. | |
| (WebInspector.LogManager.prototype._addMessage): Removed. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Added event listener for PreviousMessageRepeatCountUpdated. | |
| (WebInspector.LogSidebarPanel.prototype._messageAdded): Get message off data object. Update comment. | |
| (WebInspector.LogSidebarPanel.prototype._previousMessageRepeatCountUpdated): Added. Call through to current view. | |
| 2012-10-30 Timothy Hatcher <timothy@apple.com> | |
| Change the icons for Debug, Storage and Log navigators. | |
| This also renamed Debug Navigator to Call Stack Navigator and moved | |
| it and Issue to the end of the list since they are not always visible. | |
| I updated the keyboard shortcut numbers to match the new order. | |
| For better balance, I updated the Breakpoint and Issue icons. | |
| To help clarify these navigation items I added "Navigator" or "Details" | |
| to the tooltips, so they are no longer just singular word tooltips. | |
| <rdar://problem/11991020> Debug icon is unintuitive, consider a new icon | |
| <rdar://problem/12598939> Storage icon is unintuitive, consider a new icon | |
| <rdar://problem/12596756> Log icon is unintuitive, consider a new icon | |
| Reviewed by Conrad Shultz. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel): | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): | |
| * UserInterface/Images/NavigationItemBreakpoint.pdf: Changed. | |
| * UserInterface/Images/NavigationItemFunction.pdf: Added. | |
| * UserInterface/Images/NavigationItemLog.pdf: Changed. | |
| * UserInterface/Images/NavigationItemStorage.pdf: Changed. | |
| * UserInterface/Images/NavigationItemWarning.pdf: Changed. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel): | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| 2012-10-28 Mark Rowe <mrowe@apple.com> | |
| Remove references to unsupported OS and Xcode versions. | |
| Reviewed by Dan Bernstein. | |
| * Configurations/Base.xcconfig: | |
| * Configurations/CompilerVersion.xcconfig: Removed. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Remove reference to CompilerVersion.xcconfig. | |
| 2012-10-29 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector's clear() command work in the console again. | |
| <rdar://problem/11007383> REGRESSION (Safari 6): Should be able to clear current console log via clear() command | |
| Reviewed by Ada Chan. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messagesCleared): Call LogManager.messagesCleared. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.messageWasAdded): Added comment about ConsoleObserver. | |
| (WebInspector.LogManager.prototype.messagesCleared): Added. Moved from requestClearMessages. | |
| (WebInspector.LogManager.prototype.messageRepeatCountUpdated): Added comment about ConsoleObserver. | |
| (WebInspector.LogManager.prototype.requestClearMessages): Removed clearing since that happens | |
| in messagesCleared now in response to the request. | |
| 2012-10-29 Timothy Hatcher <timothy@apple.com> | |
| Allow resizing the docked Web Inspector from any empty space in the navigation bars. | |
| <rdar://problem/11964849> REGRESSION (Safari 6): Resizing the docked Web Inspector is not easy | |
| Reviewed by Ada Chan. | |
| * UserInterface/Main.css: | |
| (body.docked #details-sidebar > .navigation-bar): Show row-resize cursor. | |
| (body.docked #details-sidebar > .navigation-bar .item:not(.flexible-space)): Reset the cursor to default. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Add event listeners to the navigation bars. | |
| 2012-10-28 Timothy Hatcher <timothy@apple.com> | |
| Use a specific icon for application cache manifests instead of the generic document icon. | |
| <rdar://problem/11427380> In Storage navigator Application Cache icon should be better than a generic document icon | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/ApplicationCacheIcons.css: | |
| (.application-cache-manifest .icon): Use the new icons. | |
| * UserInterface/Images/ApplicationCacheManifest.png: Added. | |
| * UserInterface/Images/ApplicationCacheManifest@2x.png: Added. | |
| 2012-10-28 Joseph Pecoraro <pecoraro@apple.com> | |
| Make radio navigation buttons only switch for the left mouse button. | |
| <rdar://problem/11795081> Right-clicking navigator icons produces unexpected results | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype._mouseDown): Return early if event.button !== 0. | |
| (WebInspector.NavigationBar.prototype._mouseMoved): Assert event.button !== 0. | |
| (WebInspector.NavigationBar.prototype._mouseUp): Ditto. | |
| 2012-10-27 Timothy Hatcher <timothy@apple.com> | |
| Make the network timeline bars and callouts HiDPI compliant. | |
| <rdar://problem/10643175> Timeline pills/callouts should be made HiDPI compliant | |
| Reviewed by Sam Weinig. | |
| * UserInterface/Images/NetworkBarBlue.png: Added. | |
| * UserInterface/Images/NetworkBarBlue@2x.png: Added. | |
| * UserInterface/Images/NetworkBarGray.png: Added. | |
| * UserInterface/Images/NetworkBarGray@2x.png: Added. | |
| * UserInterface/Images/NetworkBarGreen.png: Added. | |
| * UserInterface/Images/NetworkBarGreen@2x.png: Added. | |
| * UserInterface/Images/NetworkBarLabelCalloutLeft.pdf: Added. | |
| * UserInterface/Images/NetworkBarLabelCalloutRight.pdf: Added. | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.pdf: Added. | |
| * UserInterface/Images/NetworkBarLabelCalloutWhiteRight.pdf: Added. | |
| * UserInterface/Images/NetworkBarOrange.png: Added. | |
| * UserInterface/Images/NetworkBarOrange@2x.png: Added. | |
| * UserInterface/Images/NetworkBarPurple.png: Added. | |
| * UserInterface/Images/NetworkBarPurple@2x.png: Added. | |
| * UserInterface/Images/NetworkBarRed.png: Added. | |
| * UserInterface/Images/NetworkBarRed@2x.png: Added. | |
| * UserInterface/Images/NetworkBarWhiteFlat.png: Added. | |
| * UserInterface/Images/NetworkBarWhiteFlat@2x.png: Added. | |
| * UserInterface/Images/NetworkBarYellow.png: Added. | |
| * UserInterface/Images/NetworkBarYellow@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarBlue.png: Added. | |
| * UserInterface/Images/NetworkHollowBarBlue@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarGray.png: Added. | |
| * UserInterface/Images/NetworkHollowBarGray@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarGreen.png: Added. | |
| * UserInterface/Images/NetworkHollowBarGreen@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarOrange.png: Added. | |
| * UserInterface/Images/NetworkHollowBarOrange@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarPurple.png: Added. | |
| * UserInterface/Images/NetworkHollowBarPurple@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarRed.png: Added. | |
| * UserInterface/Images/NetworkHollowBarRed@2x.png: Added. | |
| * UserInterface/Images/NetworkHollowBarYellow.png: Added. | |
| * UserInterface/Images/NetworkHollowBarYellow@2x.png: Added. | |
| * UserInterface/Images/graphLabelCalloutLeft.png: Removed. | |
| * UserInterface/Images/graphLabelCalloutLeftWhite.png: Removed. | |
| * UserInterface/Images/graphLabelCalloutRight.png: Removed. | |
| * UserInterface/Images/graphLabelCalloutRightWhite.png: Removed. | |
| * UserInterface/Images/timelineHollowPillBlue.png: Removed. | |
| * UserInterface/Images/timelineHollowPillGray.png: Removed. | |
| * UserInterface/Images/timelineHollowPillGreen.png: Removed. | |
| * UserInterface/Images/timelineHollowPillOrange.png: Removed. | |
| * UserInterface/Images/timelineHollowPillPurple.png: Removed. | |
| * UserInterface/Images/timelineHollowPillRed.png: Removed. | |
| * UserInterface/Images/timelineHollowPillYellow.png: Removed. | |
| * UserInterface/Images/timelinePillBlue.png: Removed. | |
| * UserInterface/Images/timelinePillGray.png: Removed. | |
| * UserInterface/Images/timelinePillGreen.png: Removed. | |
| * UserInterface/Images/timelinePillOrange.png: Removed. | |
| * UserInterface/Images/timelinePillPurple.png: Removed. | |
| * UserInterface/Images/timelinePillRed.png: Removed. | |
| * UserInterface/Images/timelinePillWhiteFlat.png: Removed. | |
| * UserInterface/Images/timelinePillYellow.png: Removed. | |
| * UserInterface/NetworkTimeline.css: | |
| (.network-graph-label.before): | |
| (.network-graph-label.before::after): | |
| (.network-graph-label.after): | |
| (.network-graph-label.after::before): | |
| (.network-graph-bar): | |
| (.resource-cached .network-graph-bar): | |
| (.network-resource-type-document .network-graph-bar): | |
| (.network-resource-type-document.resource-cached .network-graph-bar): | |
| (.network-resource-type-stylesheet .network-graph-bar): | |
| (.network-resource-type-stylesheet.resource-cached .network-graph-bar): | |
| (.network-resource-type-image .network-graph-bar): | |
| (.network-resource-type-image.resource-cached .network-graph-bar): | |
| (.network-resource-type-font .network-graph-bar): | |
| (.network-resource-type-font.resource-cached .network-graph-bar): | |
| (.network-resource-type-script .network-graph-bar): | |
| (.network-resource-type-script.resource-cached .network-graph-bar): | |
| (.network-resource-type-xhr .network-graph-bar): | |
| (.network-resource-type-xhr.resource-cached .network-graph-bar): | |
| (.network-resource-type-other .network-graph-bar): | |
| (.network-resource-type-other.resource-cached .network-graph-bar): | |
| (.data-grid:focus tr.selected .network-graph-bar): | |
| (.data-grid:focus tr.selected .resource-cached .network-graph-bar): | |
| (.data-grid:focus tr.selected .network-graph-label.before::after): | |
| (.data-grid:focus tr.selected .network-graph-label.after::before): | |
| 2012-10-26 Timothy Hatcher <timothy@apple.com> | |
| Clear the issue navigator sidebar when the active log is cleared. | |
| Reviewed by Ada Chan. | |
| * UserInterface/IssueManager.js: | |
| (WebInspector.IssueManager): Listen for the ActiveLogCleared event. | |
| (WebInspector.IssueManager.prototype.initialize): Dispatch the Cleared event. | |
| (WebInspector.IssueManager.prototype._activeLogCleared): Added. Call initialize. | |
| (WebInspector.IssueManager.prototype._mainResourceDidChange): Just call initialize | |
| since it now dispatches the Cleared event. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create logManager before issueManager so IssueManager | |
| can listen for the ActiveLogCleared event. | |
| 2012-10-26 Timothy Hatcher <timothy@apple.com> | |
| Clean up LogContentView and make clearing the console have straightforward code path. | |
| The icon for the trashcan was also 1px too low and not embossed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Images/NavigationItemTrash.pdf: Updated. | |
| * UserInterface/LogContentView.css: | |
| (.console-messages): Changed from #console-messages. | |
| (.console-messages a): Ditto. | |
| (.console-messages a:hover): Ditto. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Don't set ids on elements. Remove unused className. | |
| Directly listen for the ActiveLogCleared event. Remove true from the end of the | |
| ButtonNavigationItem for the clear button to make it embossed. | |
| (WebInspector.LogContentView.prototype.disable): Set _disabled. Also disable the clear | |
| button and add a FIXME. | |
| (WebInspector.LogContentView.prototype.consoleCleared): Removed. Replaced by _activeLogCleared. | |
| (WebInspector.LogContentView.prototype.closed): Added. | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): Removed. Stop firing | |
| and event no one listens for. | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): Use _clearLog. Don't | |
| add the context menu item for disabled logs. | |
| (WebInspector.LogContentView.prototype._requestClearMessages): Removed. Replaced by _clearLog. | |
| (WebInspector.LogContentView.prototype._activeLogCleared): Added. | |
| (WebInspector.LogContentView.prototype._clearLog): Call WebInspector.logManager.requestClearMessages | |
| and wait for the ActiveLogCleared event. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Removed ActiveLogCleared event listener. | |
| (WebInspector.LogSidebarPanel.prototype._activeLogCleared): Removed. | |
| 2012-10-26 Timothy Hatcher <timothy@apple.com> | |
| Update all of the generated icons in the Web Inspector when the device pixel ratio changes. | |
| <rdar://problem/12579083> Update generated images as the window moves between 1x and 2x screens | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImagesForCSS): Added matchMedia listener. | |
| (generateColoredImagesForCSS.generateImages): Renamed from imageLoaded. | |
| (generateEmbossedImages): Added matchMedia listener. | |
| (generateEmbossedImages._generateImages): Renamed from _imageLoaded. | |
| 2012-10-25 Timothy Hatcher <timothy@apple.com> | |
| Make ImageUtilities.js in Web Inspector webkitGetImageDataHD and webkitGetImageDataHD. | |
| Since the 2x canvas approach was no longer working we now only generate one canvas that | |
| matches the device pixel ratio. This does not properly update as the Web Inspector | |
| changes screens, and that is tracked by <rdar://problem/12579083>. | |
| The icons are still blurry in HiDPI, and that is tracked by <rdar://problem/12574189>. | |
| <rdar://problem/12579056> Update ImageUtilities.js to properly work in HIDPI | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ActivateButtonNavigationItem.js: | |
| (WebInspector.ActivateButtonNavigationItem.prototype.generateStyleText): Remove 2x selectors. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Ditto. | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): Ditto. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Remove 2x selectors and media queries. | |
| * UserInterface/DOMTreeOutline.css: Ditto. | |
| * UserInterface/DataGrid.css: Ditto. | |
| * UserInterface/DetailsSection.css: Ditto. | |
| * UserInterface/LogContentView.css: Ditto. | |
| * UserInterface/Main.css: Ditto. | |
| * UserInterface/NavigationSidebarPanel.css: Ditto. | |
| * UserInterface/Section.css: Ditto. | |
| * UserInterface/TimelinesContentView.css: Ditto. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): Use webkitGetImageDataHD and webkitPutImageDataHD. | |
| (generateColoredImagesForCSS): Stop generating 2x versions. | |
| (generateEmbossedImages): Stop generating 2x versions. Use webkitGetImageDataHD and | |
| webkitPutImageDataHD. | |
| 2012-10-25 Korhan Bircan <kbircan@apple.com> | |
| Fix for "<rdar://problem/12120092> REGRESSION (Safari 6): No button to clear the Log view or Quick Console". | |
| Reviewed by Timothy Hatcher. | |
| There's no "Clear Console" button in the log content view and we only support Command-K shortcut | |
| to clear the console. This is a missing feature that has been mentioned a few times on Twitter | |
| and Stack Overflow. This patch adds a "Clear Console" button in the navigation bar where we think | |
| is a good place for discoverability. | |
| We can likely do the same for the Quick Console once we decide where the best place to put the | |
| button is. | |
| * Localizations/en.lproj/localizedStrings.js: Regenerated after adding the tooltip. | |
| * UserInterface/Images/NavigationItemTrash.pdf: Added. | |
| * UserInterface/LogContentView.js: | |
| Added a navigation item button with a trashcan icon for clearing the console log. | |
| Renamed context menu tooltip from "Clear Console" to "Clear Log" for consistency. | |
| 2012-10-25 Timothy Hatcher <timothy@apple.com> | |
| Correct the blurriness of the Close, Dock and Undock navigation items in the Web Inspector. | |
| <rdar://problem/12573816> Close, Dock and Undock navigation items are blurry | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages): Pass _imageHeight instead of _imageWidth again. | |
| 2012-10-25 Timothy Hatcher <timothy@apple.com> | |
| Darken the blue used for Web Inspector active navigation items to have better contrast. | |
| This also adds a slight glow to simulate that these buttons have a blue light. | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ImageUtilities.js: | |
| (._createEmbossedCanvasImage): Tweak the colors and add a glow. | |
| 2012-10-24 Timothy Hatcher <timothy@apple.com> | |
| Hide empty navigation sidebars in the Web Inspector until they have content. | |
| This hides Issues, Debug and Storage if they are empty. This frees up the navigation | |
| bar and makes it less intimidating in most cases. | |
| <rdar://problem/12569339> Empty navigation sidebars should be hidden until they have content. | |
| Rubber-stamped by Antoine Quint. | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel.prototype._showNotPausedEmptyContentPlaceholder): Pass true | |
| to showEmptyContentPlaceholder to indicate the navigation item should be hidden too. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Pass true to NavigationSidebarPanel for auto-hiding. | |
| * UserInterface/NavigationItem.js: | |
| (WebInspector.NavigationItem.prototype.set hidden): Update layout os items expand and collapse | |
| as the space available changes. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Start the navigation bar out as hidden if auto-hiding. | |
| (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder): Call | |
| _updateNavigationItemVisibility after setting _hideNavigationItemWhenEmpty. | |
| (WebInspector.NavigationSidebarPanel.prototype.hideEmptyContentPlaceholder): Ditto. | |
| (WebInspector.NavigationSidebarPanel.prototype.updateEmptyContentPlaceholder): Call | |
| _updateNavigationItemVisibility. | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): Force navigation item visible. | |
| (WebInspector.NavigationSidebarPanel.prototype.hidden): Added. Call _updateNavigationItemVisibility. | |
| (WebInspector.NavigationSidebarPanel.prototype._updateNavigationItemVisibility): Added. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): Pass true to NavigationSidebarPanel for auto-hiding. | |
| 2012-10-24 Timothy Hatcher <timothy@apple.com> | |
| Make Command-Shift-C toggle the "point to inspect" mode. | |
| This shortcut originates from Firebug and is also available in Chrome. To make this work | |
| I had to make DOMTreeManager keep track of the state and fire an event when it changed. | |
| That way the global shortcut could toggle the mode even if there isn't a FrameContentView. | |
| This also allows all the FrameContentViews to keep in sync with the global switch. | |
| <rdar://problem/6275138> Inspect clicked element needs a keyboard shortcut | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype.inspectElement): Fire InspectModeStateChanged. | |
| (WebInspector.DOMTreeManager.prototype.get inspectModeEnabled): Added. | |
| (WebInspector.DOMTreeManager.prototype.set inspectModeEnabled.callback): Added. | |
| Handle the error case and fire InspectModeStateChanged. | |
| (WebInspector.DOMTreeManager.prototype.set inspectModeEnabled): Changed from | |
| setInspectModeEnabled into a setter. Use an internal callback. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.get navigationItems): Renamed _nodeSearchActivateButtonNavigationItem | |
| to _inspectModeButtonNavigationItem. | |
| (WebInspector.FrameContentView.prototype.shown): Removed call to _setNodeSearchEnabled. | |
| (WebInspector.FrameContentView.prototype._inspectModeStateChanged): Renamed from _setNodeSearchEnabled. | |
| (WebInspector.FrameContentView.prototype._toggleNodeSearch): Toggle WebInspector.domTreeManager.inspectModeEnabled | |
| and listen for the event instead of a callback. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a shortcut for inspect mode. | |
| (WebInspector._toggleInspectMode): Added. | |
| 2012-10-24 Timothy Hatcher <timothy@apple.com> | |
| Make it easy to have different tooltips for toggle buttons in the Web Inspector. | |
| Also tweak the wording of the hand button in an attempt to keep it clear and terse. | |
| Reviewed by Jeff Miller. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ActivateButtonNavigationItem.js: | |
| (WebInspector.ActivateButtonNavigationItem): Take an activatedToolTip param in addition to | |
| defaultToolTip and store them. | |
| (WebInspector.ActivateButtonNavigationItem.prototype.get defaultToolTip): Added. | |
| (WebInspector.ActivateButtonNavigationItem.prototype.get activatedToolTip): Added. | |
| (WebInspector.ActivateButtonNavigationItem.prototype.set activated): Switch the tooltips. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Pass in alternate tooltips for the navigation items. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Setup the tooltips when the navigation items are created. | |
| (WebInspector.updateDockedState): Remove toolTip manipulation. | |
| (WebInspector._sidebarCollapsedStateDidChange): Ditto. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Setup the tooltips when the navigation items are created. | |
| (WebInspector.QuickConsole.prototype.set collapsed): Remove toolTip manipulation. | |
| (WebInspector.QuickConsole.prototype._debuggerDidPause): Ditto. | |
| (WebInspector.QuickConsole.prototype._debuggerDidResume): Ditto. | |
| * UserInterface/ToggleButtonNavigationItem.js: | |
| (WebInspector.ToggleButtonNavigationItem):Take an alternateToolTip param in addition to | |
| defaultToolTip and store them. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.get defaultToolTip): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.get alternateToolTip): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.set toggled): Switch the tooltips. | |
| 2012-10-25 Antoine Quint <graouts@apple.com> | |
| Customise the word-wrapping behaviour to break even when there is no space in the text | |
| typed into the console (W3C spec at http://www.w3.org/TR/css3-text/#overflow-wrap) | |
| <rdar://problem/12331949> Quick console text overlaps debugging controls | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/JavaScriptTextPrompt.css: | |
| (.javascript-prompt): | |
| 2012-10-24 Antoine Quint <graouts@apple.com> | |
| Add the "active-focus" state as a shared state for all button navigation items and use that state as well | |
| as the "focus" state regardless of keyboard focus. | |
| <rdar://problem/11742049> Web Inspector navigation bar buttons need a more noticeable selected state | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ActivateButtonNavigationItem.js: Stop using custom states and use the shared states defined in | |
| ButtonNavigationItem. | |
| (WebInspector.ActivateButtonNavigationItem.prototype.generateStyleText): | |
| * UserInterface/ButtonNavigationItem.js: Add the "active-focus" from ActivateButtonNavigationItem. | |
| * UserInterface/RadioButtonNavigationItem.js: Use the "focus" state even when we're not using keyboard focus | |
| and use the "active-focus" state when we're pressing the button as well. | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): | |
| 2012-10-23 Timothy Hatcher <timothy@apple.com> | |
| Make "Inspect Element" and the inspect() console API switch the sidebar to match the content view. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.inspect): Select the resourceSidebarPanel or | |
| the storageSidebarPanel depending on the type of object being inspected. | |
| 2012-10-23 Timothy Hatcher <timothy@apple.com> | |
| Fix event listener links and make them work with anonymous scripts. | |
| <rdar://problem/12557978> REGRESSION: Event listener function links are displayed as | |
| numbers and don't work | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.reset): Call Script.resetUniqueDisplayNameNumbers. This | |
| way the anonymous scripts scripts start back at 1 when you reload or load a new page. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): In the past scriptId | |
| could be a URL. Now it is always a script identifier. So try looking up the resource by URL | |
| if a script can't be found directly. Use WebInspector.createSourceCodeLink. | |
| * UserInterface/Main.css: | |
| (.go-to-link): Added cursor: pointer for cases when the link has no href. | |
| * UserInterface/Main.js: | |
| (WebInspector.createSourceCodeLink): Added. | |
| (WebInspector.createSourceCodeLink.showSourceCode): Added. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get displayName): Added. | |
| * UserInterface/Script.js: | |
| (WebInspector.Script.resetUniqueDisplayNameNumbers): Added. | |
| (WebInspector.Script.prototype.get displayName): Added. | |
| * UserInterface/ScriptTreeElement.js: | |
| (WebInspector.ScriptTreeElement): Use the displayName getter for mainTitle. | |
| * UserInterface/SourceCode.js: | |
| (WebInspector.SourceCode.prototype.get displayName): Added. | |
| 2012-10-22 Timothy Hatcher <timothy@apple.com> | |
| Make docking/undocking the Web Inspector work again. | |
| <rdar://problem/12554785> REGRESSION (r132045): Docking/undocking does not work | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.setAttachedWindow): Removed. | |
| (InspectorFrontendAPI.setDockSide): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector._toggleDockedState): Use InspectorFrontendHost.requestSetDockSide. | |
| 2012-10-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/12540519> Should be able to copy text from datagrid easier | |
| Reviewed by Timothy Hatcher. | |
| Have a DataGrid handle a copy event if the last selection was in the | |
| DataGrid and it has a selected row. Also add a "Copy Row" context menu. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Add "Copy Row" context menu string. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): | |
| (WebInspector.DataGrid.prototype._contextMenuInDataTable): | |
| Add "Copy Row" context menu item if the node is selectable. | |
| (WebInspector.DataGrid.prototype._copyTextForDataGridNode): | |
| Return a tab separated list of values. This uses the original data from | |
| which the node is created. In some cases, like the instrument navigator's | |
| datagrids, this may not match the final DataGrid row's content. | |
| (WebInspector.DataGrid.prototype._beforeCopy): | |
| (WebInspector.DataGrid.prototype._copy): | |
| Allow copy when the event is inside the datagrid, there is no range | |
| selection, and we have a selected row. | |
| (WebInspector.DataGrid.prototype._copyRow): | |
| Directly copy an individual row. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| Remove useCapture from the main document's beforecopy handler. | |
| 2012-10-22 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector fast! | |
| Use a timeout instead of an interval to prevent being capped on the time between protocol messages. | |
| Only one timeout is created and the whole queue is dispatched when the timer fires. This prevents | |
| creating potentially hundreds of timers that were all firing at the same time. | |
| <rdar://problem/11759145> REGRESSION (Safari 6): console.log() exhibits extremely long delay (slow) | |
| when many javascript files have just been loaded | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector.dispatchNextQueuedMessageFromBackend): Removed interval code. | |
| (WebInspector.dispatchMessageFromBackend): Use setTimeout instead of setInterval. Updated the comment | |
| and removed the reentrancy part, which isn't possible since the backend also has a queue with a timer. | |
| 2012-10-22 Timothy Hatcher <timothy@apple.com> | |
| Make WebInspector.JavaScriptLogViewController be responsible for scrolling to the bottom, | |
| since it can check before new messages are added to know if a scroll is needed. | |
| This fixes a bug where we were not auto scrolling down if you were at the bottom. | |
| <rdar://problem/12049983> REGRESSION (Safari 6): Console doesn't autoscroll when it should | |
| Reviewed by John Sullivan. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Store element as _element. | |
| (WebInspector.JavaScriptLogViewController.prototype.isScrolledToBottom): Added. | |
| (WebInspector.JavaScriptLogViewController.prototype.scrollToBottom.delayedWork): Added. | |
| Do the actual scroll here. | |
| (WebInspector.JavaScriptLogViewController.prototype.scrollToBottom): Added. Don't scroll | |
| immediately so we are not causing excessive layouts. | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): Remember if we | |
| were scrolled to the bottom before appending the message. This was the bug, before the delegate | |
| didAppendConsoleMessage was checking and that was after the content was appended and we were | |
| never scrolled to the bottom at that point. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): Don't try to scroll, it is | |
| now handled by JavaScriptLogViewController. | |
| (WebInspector.LogContentView.prototype._isScrollIntoViewScheduled): Removed. | |
| (WebInspector.LogContentView.prototype._scheduleScrollIntoView): Removed. | |
| (WebInspector.LogContentView.prototype._immediatelyScrollIntoView): Removed. | |
| (WebInspector.LogContentView.prototype._cancelScheduledScrollIntoView): Removed. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._isScrolledToBottom): Call through to JavaScriptLogViewController. | |
| (WebInspector.QuickConsole.prototype._scrollToBottom): Ditto. | |
| 2012-10-22 Timothy Hatcher <timothy@apple.com> | |
| Make WebInspector.JavaScriptLogViewController create the top WebInspector.ConsoleGroup. | |
| JavaScriptLogViewController now takes the parent element so it controls more of the DOM. This will | |
| be needed to control the scroll state instead of having LogContentView and QuickConsole do it. | |
| Part of: <rdar://problem/12049983> REGRESSION (Safari 6): Console doesn't autoscroll when it should | |
| Reviewed by John Sullivan. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Don't take in a ConsoleGroup, create it internally. | |
| Insert or append the ConsoleGroup into the parentElement. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Don't make the ConsoleGroup, just get it from _logViewController. | |
| Create and assign this.prompt first so it is in the DOM before making the _logViewController. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Don't make the ConsoleGroup. | |
| 2012-10-21 Timothy Hatcher <timothy@apple.com> | |
| Prevent the scroll position from changing when rebuilding the styles sidebar. | |
| <rdar://problem/12544009> The Styles details sidebar scrolls to the top after editing a property | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Save and restore scrollTop. | |
| 2012-10-20 Timothy Hatcher <timothy@apple.com> | |
| Add an "Inherited Styles" section to the Style details sidebar. | |
| <rdar://problem/11981468> REGRESSION (Safari 6): Inspector does not show Inherited Style Rules | |
| Reviewed by Ricky Mondello. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section.inherited .properties .inherited): Added. | |
| Hides non-iherited properties for inherited rules. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Create and add the Inherited Styles section. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createStylePropertiesSection): | |
| Pass styleRule.isInherited instead of always passing false. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createRuleGroups): Added. | |
| Factored out of createMatchedRuleGroups for reuse by inherited rules. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createMatchedRuleGroups): | |
| Use the factored out createRuleGroups function. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Append inherited rules | |
| to inheritedStyleRules for later use. Walk the inheritedStyleRules and create the sections and groups. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header): Reduce right padding, it was too wide. | |
| (.details-section > .header > .node-link, .details-section > .header > .go-to-arrow): Added. | |
| Float right to position the arrow on the right side of the title. | |
| (.details-section > .header .go-to-arrow): Added. Adjust the size and margin to better fit the header. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Changed "show-inherited" to just "inherited". This reduces the | |
| confusion with the computed style "show-inherited" class. | |
| 2012-10-20 Timothy Hatcher <timothy@apple.com> | |
| Make the console log stay active when navigating to a new page if one was showing. | |
| <rdar://problem/12542303> DOM Tree forces itself visible when navigating to a new page while looking at a Log | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype._mainResourceDidChange): Only send SessionStarted or Cleared, | |
| not both. This way listeners of Cleared can start the new session with some context. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._startSession): Added. Factored out of _sessionStarted. | |
| Honor the forceActiveContentView parameter when deciding to show the content view. | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): Call _startSession. | |
| (WebInspector.LogSidebarPanel.prototype._logsCleared): Remember if we were showing a log before | |
| closing all the logs. Call _startSession can force the content view to be active if we were | |
| showing a log before. | |
| 2012-10-20 Timothy Hatcher <timothy@apple.com> | |
| Make Encoded and Transfer Size update when the values change during page load. | |
| Renamed Encoded Size to Transfer Size to avoid confusion in cases where it isn't encoded. Also | |
| the value includes the response headers size, which is the only size when showing a 304. This | |
| is consistent with the title of the Transferred column in the Network Timeline. | |
| <rdar://problem/12542122> Encoded and Decoded Size doesn't update in the Resource details sidebar | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get transferSize): Move the 304 check before the cached | |
| check since we mark 304 loads as cached now, but there still was network transfer of headers. | |
| (WebInspector.Resource.prototype.updateForResponse): Fire TransferSizeDidChange for 304 and | |
| if we have a Content-Length. | |
| (WebInspector.Resource.prototype.increaseSize): Fire TransferSizeDidChange if we don't have | |
| a _transferSize and it isn't a 304 or Content-Length is missing. | |
| (WebInspector.Resource.prototype.markAsCached): Fire TransferSizeDidChange when not a 304. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Renamed "Encoded Size" to "Transfer Size". | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.set resource): Listen for SizeDidChange and | |
| TransferSizeDidChange events. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): Call _refreshDecodedSize and | |
| _refreshTransferSize. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): Use emDash | |
| in more places. Removed valueForSize and updating of size rows. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._valueForSize): Added. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshDecodedSize): Added. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshTransferSize): Added. | |
| 2012-10-19 Timothy Hatcher <timothy@apple.com> | |
| Make the Scope Chain details sidebar update when continuing in a loop. | |
| <rdar://problem/11828667> REGRESSION (Safari 6): Variables do not update when continuing in a loop | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): Don't return early if the line | |
| number didn't change. The execution state still could have changed. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set executionLineNumber): Only return early if there isn't a line | |
| number and that isn't changing. Still dispatch the event even if the number didn't change. The execution | |
| state still could have changed. | |
| 2012-10-19 Timothy Hatcher <timothy@apple.com> | |
| Better support for complex Content-Types in the Post Data section. | |
| This change splits out the charset and boundary info from the Content-Type and | |
| displays that info on separate rows. It also handles zero size data since the | |
| backend does not send data if there are any files present. | |
| Part of: <rdar://problem/6716080> REGRESSION (Safari 6): Missing POST request data | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.simple.data > .value): Added. | |
| * UserInterface/DetailsSectionSimpleRow.js: | |
| (WebInspector.DetailsSectionSimpleRow.prototype.set value): Set the data class name | |
| if the value does not have any spaces for good word breaking. This will allow breaking | |
| on every character, which looks better for the boundary post data string. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshPostDataSection): Parse | |
| the content type into MIME-type and the boundary and/or charset. | |
| 2012-10-19 Timothy Hatcher <timothy@apple.com> | |
| Add the first part of showing POST data: simple data in the Resource details sidebar. | |
| Part of: <rdar://problem/6716080> REGRESSION (Safari 6): Missing POST request data | |
| Reviewed by Dean Jackson. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Removed optional parameters | |
| when making a Resource. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Pass along postData. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Pass null for postData. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Added parameter for postData. | |
| Pass along postData to Resource constructor. | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Removed optional parameters | |
| when making a Resource. | |
| (WebInspector.FrameResourceManager.prototype._createResource): Ditto. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added postData parameter. Store the _postData. | |
| (WebInspector.Resource.prototype.get postData): Added. | |
| (WebInspector.Resource.prototype.get postDataContentType): Added. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Create _postDataSection. Don't show _queryParametersSection | |
| by default, it is now added or removed in _refreshURL. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): Call _refreshPostDataSection. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshURL): Show and hide the query | |
| parameters section based on the query string. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshPostDataSection): Added. | |
| 2012-10-19 Timothy Hatcher <timothy@apple.com> | |
| Support text/x-javascript and other MIME-types as scripts. | |
| The code was also throwing an exception for unknown MIME-types, which was causing | |
| the view displaying the Resource to not show anything. Now we just log an error | |
| and return null so plain text will be shown for unknown types. | |
| <rdar://problem/11961403> REGRESSION (Safari 6): XHR response is blank for some | |
| sites (including store.apple.com) | |
| Reviewed by Antoine Quint. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.Type._mimeTypeMap): Added application/x-json and variants. | |
| * UserInterface/SourceTokenizer.js: | |
| (WebInspector.SourceTokenizer): Added application/x-json and variants. Changed a throw | |
| into a console.error with a return of null. | |
| 2012-10-19 Timothy Hatcher <timothy@apple.com> | |
| Properly clear the special script folders after a reload so old scripts don't stay around. | |
| <rdar://problem/11329600> REGRESSION (Safari 6): Special scripts duplicate for each reload | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared): Set each folder to null so they will be | |
| recreated instead of reused the next time there is a script to show. | |
| =2012-10-18 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where the Inspector would show duplicate broken resources if you opened it | |
| while the page was still loading. | |
| <rdar://problem/11328818> Broken resources if you open the inspector while the page is loading | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.markResourceRequestAsServedFromMemoryCache): Add a comment | |
| about why we might not have a resource. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Don't try to make a | |
| resource here since we missed the resourceRequestWillBeSent call. It just caused duplicate resources | |
| and broken ones too. Add a comment and return early. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveData): Add a comment about why we | |
| might not have a resource. Removed an assert. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): Ditto. | |
| 2012-10-18 Joseph Pecoraro <pecoraro@apple.com> | |
| Add missing color aware CSS properties. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| 2012-10-18 Joseph Pecoraro <pecoraro@apple.com> | |
| In cases where the search term is a CSS Selector or XPath query and | |
| not a textual match we were not adding a sidebar entry. In such cases | |
| add a sidebar entry and highlight the entire title. | |
| <rdar://problem/12522494> Searching "link[href]" in search navigator has missing sidebar items | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.performSearch.domCallback.domSearchResults): | |
| First check for partial highlights in textual matches. If none were | |
| found, this is a Selector or XPath match, and we highlight it entirely. | |
| 2012-10-18 Timothy Hatcher <timothy@apple.com> | |
| Harden the Web Inspector a bit with a Content Security Policy header. | |
| By default only load content from 'self'. Allow external loading of images, media and | |
| fonts; because large resources are not sent over the inspector protocol. Allow inline | |
| styles and eval for scripts. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.html: | |
| 2012-10-17 Timothy Hatcher <timothy@apple.com> | |
| Improve error reporting for Inspector protocol errors. | |
| Reviewed by Dean Jackson. | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype.reportProtocolError): Log the message of the error | |
| object, not the error object itself. | |
| 2012-10-17 Antoine Quint <graouts@apple.com> | |
| We now display a new section in the resource details sidebar panel for the image size when we're inspecting | |
| an image resource. To facilitate this, we add a new .getImageSize() method on Resource which creates an | |
| <img> element to load the base64 version of the image as it was loaded and use the loaded element to query | |
| the intrinsic image metrics. | |
| <rdar://problem/11247288> REGRESSION (Safari 6): Width and height size info for image resources is missing | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.markAsFailed): | |
| (WebInspector.Resource.prototype.getImageSize.imageDidLoad): | |
| (WebInspector.Resource.prototype.getImageSize): | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshImageSizeSection): | |
| 2012-10-16 Mark Rowe <mrowe@apple.com> | |
| Add a configuration setting to control whether resources in the | |
| Web Inspector framework are combined and minified. | |
| Reviewed by Timothy Hatcher. | |
| This allows non-Production builds to enable this functionality if desired. | |
| * Configurations/WebInspectorFramework.xcconfig: | |
| * Scripts/copy-user-interface-resources.sh: | |
| 2012-10-16 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception and properly deactivate the node search button after a node is inspected. | |
| <rdar://problem/12507181> Remnant mention of .nodeSearchActivateButtonNavigationItem in Main.js | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Added DOMNodeWasInspected event listener. | |
| (WebInspector.FrameContentView.prototype._domNodeWasInspected): Added. Deactivate the node search button. | |
| * UserInterface/Main.js: | |
| (WebInspector._domNodeWasInspected): Always call InspectorFrontendHost.bringToFront(). This is good | |
| for the Inspect Element context menu item in windowed mode too. | |
| 2012-10-16 Timothy Hatcher <timothy@apple.com> | |
| Fix the dock buttons in the Web Inspector navigation bar when opening the Inspector with the left sidebar hidden. | |
| <rdar://problem/12509577> REGRESSION: Dock navigation items are in the wrong place if the | |
| Inspector is opened with the left sidebar hidden | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/Main.js: | |
| (WebInspector._updateDockNavigationItems): Only do this work if needed by checking if the close button is not | |
| in the right place. This function can be called multiple times, and the concat can cause the items to be | |
| inserted into the leftNavigationItems array multiple times. | |
| 2012-10-16 Antoine Quint <graouts@apple.com> | |
| Adding decoded and encoded sizes as a new group in the Request & Response panel in | |
| the resource details sidebar panel. To make the reported sizes more legible, we also | |
| make a small change in Number.bytesToString() such that we have a space between the | |
| value and the unit, just like what the Get Info panel does in the Finder. | |
| <rdar://problem/12508215> Add decoded and encoded sizes to Request & Response panel | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse.valueForSize): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): | |
| * UserInterface/Utilities.js: | |
| (Number.string_appeared_here.value): | |
| 2012-10-16 Antoine Quint <graouts@apple.com> | |
| We add a new method to sync the state of the compositing borders button to the WebCore page settings | |
| when a frame content view is shown in the Web Inspector UI. We also add a new backend command to complement | |
| the OpenSource patch for https://bugs.webkit.org/show_bug.cgi?id=99458 which is also out for review. | |
| <rdar://problem/12498181> "Show compositing borders" button is not activated when inspector is re-opened | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.shown): | |
| (WebInspector.FrameContentView.prototype._toggleCompositingBorders): | |
| (WebInspector.FrameContentView.prototype._updateCompositingBordersButtonToMatchPageSettings): | |
| * UserInterface/InspectorBackendCommands.js: | |
| 2012-10-16 Antoine Quint <graouts@apple.com> | |
| Add a new .highlight() method on TextEditorChunk which applies a simple CSS | |
| animation to the HTML element for the text chunk, and call this method in | |
| TextEditor's revealLine() method. Since the CSS class we're applying is only | |
| meant to be transitory, we remove the CSS class name upon completion of the | |
| animation. | |
| <rdar://problem/12349298> REGRESSION (Safari 6): When clicking a file/line link | |
| in the console the line is not highlighted in the source | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor-text-chunk.highlighted): | |
| (@-webkit-keyframes fadeout): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.revealLine): | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent): | |
| (WebInspector.TextEditorTextChunk.prototype.highlight): | |
| 2012-10-15 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception in ContentBrowser._updateContentViewNavigationItems that was causing resource to not be cleared. | |
| <rdar://problem/12501269> REGRESSION: Reloading or loading a new page does not clear previous resources | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems): The currentContentView can be | |
| null when this is called. In that case just clear _currentContentViewNavigationItems and return early. | |
| 2012-10-15 Timothy Hatcher <timothy@apple.com> | |
| Remove extra line breaks before color values when copying from the style sidebar. | |
| <rdar://problem/12506099> When copying style rule sets from the sidebar, | |
| line breaks are inserted in the middle of each line | |
| Reviewed by Simon Fraser. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .swatch): Improve spacing and alignment since | |
| having swatch-inner as an inline-block affects layout slightly. | |
| (.sidebar > .panel.details.css-style .swatch-inner): Change display from block to | |
| inline-block. This fixes the bug by making WebKit not insert a newline for the block. | |
| 2012-10-15 Timothy Hatcher <timothy@apple.com> | |
| Treat SVG main resources as documents and syntax highlight them using the HTML tokenizer. | |
| SVG subresources are still treated as images and preview as such. This matches how the | |
| WebKit Web Inspector treats SVGs. | |
| <rdar://problem/11332688> REGRESSION (Safari 6): Source code view shows SVG image instead of source | |
| Reviewed by Ada Chan and Dan Bernstein. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.Type._mimeTypeMap): Added image/svg+xml | |
| * UserInterface/SourceTokenizer.js: | |
| (WebInspector.SourceTokenizer): Use HTMLSourceTokenizer for image/svg+xml. | |
| 2012-10-14 Jeff Miller <jeffm@apple.com> | |
| Regenerate localizedStrings.js after r45263. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Regenerated. | |
| 2012-10-13 Timothy Hatcher <timothy@apple.com> | |
| Avoid direct manipulation of the ContentBrowser and Sidebar navigation bars in Main.js. | |
| <rdar://problem/12494193> Main.js should not modify the navigationBars directly | |
| Reviewed by Antoine Quint. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Added _leftNavigationItems and _rightNavigationItems. | |
| (WebInspector.ContentBrowser.prototype.get leftNavigationItems): Added. | |
| (WebInspector.ContentBrowser.prototype.set leftNavigationItems): Added. | |
| (WebInspector.ContentBrowser.prototype.get rightNavigationItems): Added. | |
| (WebInspector.ContentBrowser.prototype.set rightNavigationItems): Added. | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems): Fix a | |
| FIXME when calculating the insertionIndex by using _rightNavigationItems. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Use leftNavigationItems and rightNavigationItems | |
| instead of direct manipulation of the navigation bar. | |
| (WebInspector._updateDockNavigationItems): Ditto. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.insertNavigationItem): Remove the item if it | |
| is already in another NavigationBar. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): Added _leftNavigationItems and _rightNavigationItems. | |
| (WebInspector.Sidebar.prototype.insertSidebarPanel): Don't use addNavigationItem | |
| since that would go after the right items. | |
| (WebInspector.Sidebar.prototype.get leftNavigationItems): Added. | |
| (WebInspector.Sidebar.prototype.set leftNavigationItems): Added. | |
| (WebInspector.Sidebar.prototype.get rightNavigationItems): Added. | |
| (WebInspector.Sidebar.prototype.set rightNavigationItems): Added. | |
| 2012-10-13 Antoine Quint <graouts@apple.com> | |
| We add a new navigation item to the FrameContentView to toggle composition debug options using | |
| the page's settings. To facilitate that, we added a new method in InspectorPageAgent to allow | |
| to tap into WebCore and change those settings. That work is covered by an OpenSource patch for | |
| https://bugs.webkit.org/show_bug.cgi?id=99253. | |
| <rdar://problem/10358004> Would like ability to turn layer borders on/off via the Web Inspector | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.get navigationItems): | |
| (WebInspector.FrameContentView.prototype.shown): | |
| (WebInspector.FrameContentView.prototype._toggleNodeSearch): | |
| (WebInspector.FrameContentView.prototype._toggleCompositingBorders): | |
| * UserInterface/Images/NavigationItemLayers.pdf: Added. | |
| * UserInterface/InspectorBackendCommands.js: | |
| 2012-10-12 Antoine Quint <graouts@apple.com> | |
| We remove the code that manages the display of the "node inspection by selection" toggle navigation | |
| item from Main.js and let the ContentBrowser add and remove navigation items registered on the ContentView | |
| instance made the current content view. | |
| <rdar://problem/12487959> Let content views provide navigation items to the content browser. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems.var): | |
| (WebInspector.ContentBrowser.prototype._updateContentViewNavigationItems): | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get navigationItems): | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.get navigationItems): | |
| (WebInspector.FrameContentView.prototype.shown): | |
| (WebInspector.FrameContentView.prototype._pathComponentSelected): | |
| (WebInspector.FrameContentView.prototype._setNodeSearchEnabled): | |
| (WebInspector.FrameContentView.prototype._toggleNodeSearch): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-10-12 Timothy Hatcher <timothy@apple.com> | |
| Update the CSSKeywordCompletions.InheritedProperties list. | |
| <rdar://problem/12371756> Computed -webkit-font-smoothing should appear in Inspector | |
| Rubber-stamped by Brian Weinstein. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| (WebInspector.CSSKeywordCompletions.InheritedProperties): Updated from CSSProperty::isInheritedProperty | |
| from WebCore. The old list was from an old CSS 2.1 list. | |
| 2012-10-12 Timothy Hatcher <timothy@apple.com> | |
| Don't overdraw the DataGrid sort indicator each time a DataGrid is created. | |
| <rdar://problem/12488653> DataGrid sort indicator keeps getting darker | |
| Reviewed by John Sullivan. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._generateSortIndicatorImagesIfNeeded): Store _generatedSortIndicatorImages | |
| on the WebInspector.DataGrid constructor so it only generates the images once. Use a solid color for the | |
| arrows. The previous color was too light now that it isn't overdrawing. | |
| 2012-10-11 Timothy Hatcher <timothy@apple.com> | |
| Show the HTTP method, cached and HTTP status code/text in the Resource details sidebar. | |
| This fixes two cases where the resource was not marked as cached; when loaded from the | |
| disk cache and when there is a 304 response. | |
| <rdar://problem/11256645> REGRESSION (Safari 6): No HTTP method shown | |
| Reviewed by Ricky Mondello. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Pass along the method. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Pass null | |
| for the request method. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Mark as cached | |
| when loaded from the disk cache. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Pass along the method. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added requestMethod and store it. | |
| (WebInspector.Resource.prototype.get requestMethod): Added. | |
| (WebInspector.Resource.prototype.updateForResponse): Renamed ResponseHeadersDidChange event to | |
| ResponseReceived since it represents more than headers. | |
| (WebInspector.Resource.prototype.markAsCached): Fire CacheStatusDidChange event. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Create new rows and section. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.set resource): Listen for new events. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): Call _refreshRequestAndResponse | |
| instead of _refreshResponseHeaders. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestAndResponse): Added. | |
| Update the new section and also call _refreshResponseHeaders. | |
| 2012-10-11 Antoine Quint <graouts@apple.com> | |
| Identify floating value and display a rounded value to the 100th in the box model | |
| section with a thumbnail showing the full value. Here are screenshots of before | |
| after applying this patch for margins with a floating value. | |
| <rdar://problem/12478166> Box Model section can show values overlapping their label | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/BoxModelDetailsSectionRow.js | |
| 2012-10-11 Antoine Quint <graouts@apple.com> | |
| Make headers in the details section use an ellipsis overflow style. | |
| <rdar://problem/12478151> Class names in the list of inherited classes in the Node | |
| sidebar can overflow | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DetailsSection.css | |
| 2012-10-10 Timothy Hatcher <timothy@apple.com> | |
| Prevent searches from breaking links in the Source Code view of the Web Inspector. | |
| This changes how the syntax highlighter appends tokens and search results. The token | |
| elements are now created in whole before processing the inner text and search results. | |
| Before the DOM would end up being flatter, but it caused multiple links to be created | |
| if a search result was in the middle. The links were broken too because it only knew | |
| about the fragment of the text and it resolved the absolute URL on that. | |
| <rdar://problem/12461082> Searching in Safari's Web Inspector breaks links in source | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.createSyntaxHighlightedDocumentFragment): | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.createTextNode): | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.appendText): | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.appendToken): | |
| 2012-10-10 Timothy Hatcher <timothy@apple.com> | |
| Make DOM storage refresh on update when inspecting iOS 6 devices. | |
| <rdar://problem/12472491> REGRESSION: DOM Storage does not refresh when inspecting iOS 6 | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Added. Call domStorageUpdated. | |
| * UserInterface/InspectorBackendLegacyCommands.js: Registered DOMStorage.updateDOMStorage event. | |
| 2012-10-10 Timothy Hatcher <timothy@apple.com> | |
| Make database inspection work with Curie and keep it backwards compatible with iOS 6. | |
| <rdar://problem/12463671> REGRESSION: Database inspection is broken | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DatabaseObject.js: | |
| (WebInspector.DatabaseObject.prototype.executeSQL): Set expectsResultObject on the callback. | |
| (WebInspector.DatabaseObject.prototype.executeSQL.queryCallback): Added. | |
| (WebInspector.DatabaseObject.prototype.executeSQL.callback): Reworked for compatibility | |
| by using the result object. | |
| * UserInterface/DatabaseObserver.js: | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionSucceeded): Added. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionFailed): Added. | |
| * UserInterface/InspectorBackend.js: | |
| (InspectorBackendClass.prototype.dispatch): See if the callback needs the result | |
| object by checking for expectsResultObject. | |
| * UserInterface/InspectorBackendLegacyCommands.js: Added. | |
| * UserInterface/Main.html: Included InspectorBackendLegacyCommands.js. | |
| 2012-10-09 Timothy Hatcher <timothy@apple.com> | |
| When using "Inspect Element", select the Style details sidebar panel if one of the DOM | |
| details sidebar panels isn't already selected. | |
| <rdar://problem/12239441> REGRESSION (Safari 6): "Inspect Element" shows Resource | |
| details instead of useful Style details | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.js: | |
| (WebInspector._domNodeWasInspected): Set this.detailsSidebar.selectedSidebarPanel | |
| to this.cssStyleDetailsSidebarPanel if the current sidebar ins't an instance of | |
| the WebInspector.DOMDetailsSidebarPanel prototype. | |
| 2012-10-09 Timothy Hatcher <timothy@apple.com> | |
| Make the Style details sidebar work again after recent protocol changes. | |
| This change makes the Web Inspector work with Curie's Inspector protocol as well | |
| as maintaining backwards compatibility with iOS 6. | |
| <rdar://problem/12281730> REGRESSION (r129470): Nothing is showing in the Style sidebar | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._refresh): Removed forcedPseudoClasses | |
| from the call to getComputedStyleAsync, because it was always ignored. | |
| * UserInterface/CSSRule.js: | |
| (WebInspector.CSSRule): Support selectorList and selectorText. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Removed | |
| forcedPseudoClasses from the calls to getComputedStyleAsync and getMatchedStylesAsync. | |
| Fallback to empty array for matchedCSSRules. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.parseRuleArrayPayload): The protocol had just an array of | |
| rules, now it is an array of matches that have a 'rule' property. Support both. | |
| (WebInspector.CSSStyleManager.prototype.forcedPseudoClasses): Removed. | |
| (WebInspector.CSSStyleManager.prototype.getMatchedStylesAsync): Removed forcedPseudoClasses | |
| parameter. The protocol used 'rules' as a property, now it is 'matches'. Support both. | |
| Use invoke() when calling CSSAgent.getMatchedStylesForNode since forcedPseudoClasses was removed | |
| as an parameter, and invoke uses parameter names instead of parameter order. | |
| (WebInspector.CSSStyleManager.prototype.getComputedStyleAsync): Removed forcedPseudoClasses | |
| parameter. Use invoke() here too. | |
| 2012-10-09 Timothy Hatcher <timothy@apple.com> | |
| Update InspectorBackendCommands.js to r130785 of the Inspector protocol. | |
| <rdar://problem/12463786> | |
| Some features need to be updated to work with these changes: | |
| <rdar://problem/12281730> REGRESSION (r129470): Nothing is showing in the Style sidebar | |
| <rdar://problem/12463671> REGRESSION: Database inspection is broken | |
| <rdar://problem/12463631> REGRESSION: Subframes don't show the correct DOM (always the main frame's DOM) | |
| Reviewed by Ricky Mondello. | |
| * UserInterface/CSSObserver.js: | |
| (WebInspector.CSSObserver.prototype.namedFlowCreated): Added stub. | |
| (WebInspector.CSSObserver.prototype.namedFlowRemoved): Added stub. | |
| (WebInspector.CSSObserver.prototype.regionLayoutUpdated): Added stub. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Removed. | |
| * UserInterface/DatabaseObserver.js: | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionSucceeded): Removed. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionFailed): Removed. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): Added sourceMapURL and hasSourceURL arguments. | |
| * UserInterface/InspectorBackendCommands.js: Updated to r130785. | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.didCreateWorker): Removed. | |
| (WebInspector.InspectorObserver.prototype.didDestroyWorker): Removed. | |
| 2012-10-04 Mark Rowe <mrowe@apple.com> | |
| Take Xcode's suggestions for changes to our internal Xcode projects. | |
| Rubber-stamped by John Sullivan. | |
| Xcode 4.5 suggests enabling several new warnings in most of our projects. While doing this | |
| I also noticed and removed a number of obsolete configuration settings, and upgraded the | |
| project format for the few projects that were not using the latest version. | |
| * Configurations/Base.xcconfig: | |
| * WebInspectorUI.xcodeproj/project.pbxproj: | |
| 2012-09-13 Timothy Hatcher <timothy@apple.com> | |
| Collapse the Computed Style section by default. | |
| We do remember the state, but lets help people along here and collapse it by default. | |
| <rdar://problem/12294479> | |
| Reviewed by Cody Krieger and Mark Rowe. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Pass true when making the _computedStyleSection | |
| to make it collapse by default. | |
| 2012-08-27 Timothy Hatcher <timothy@apple.com> | |
| Use -webkit-image-set for border-image instead of media queries in the Web Inspector. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter > .line-number > .breakpoint): Use -webkit-image-set. | |
| (.text-editor > .gutter > .line-number.breakpoint-resolved > .breakpoint): Ditto. | |
| (.text-editor > .gutter > .line-number.execution-line::after): Ditto. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview > .timeline .bar): Combine two rules with identical selectors. | |
| (.timeline-overview > .timeline.timeline-record-type-network .bar): Use -webkit-image-set. | |
| (.timeline-overview > .timeline.timeline-record-type-layout .bar): Ditto. | |
| (.timeline-overview > .timeline.timeline-record-type-script .bar): Ditto. | |
| 2012-08-27 Timothy Hatcher <timothy@apple.com> | |
| Make the JavaScript & Events timeline pills render correctly in HiDPI. | |
| <rdar://problem/12183848> JavaScript timeline pill broken in HiDPI | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview > .timeline.timeline-record-type-script .bar): Changed from | |
| .timeline-overview > .timeline.timeline-record-type-script > .bar. | |
| 2012-08-15 Joseph Pecoraro <pecoraro@apple.com> | |
| Add iOS inheritable properties to the inspector to match | |
| CSSProperty::isInheritedProperty. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| 2012-08-16 Timothy Hatcher <timothy@apple.com> | |
| Save and restore the text selection when modifying the DOM representation of the text. | |
| <rdar://problem/12059199> Selection is lost when scrolling in the source code view | |
| Reviewed by Darin Adler. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set selectedTextRange): Return early if null is passed. | |
| This allow the callers to avoid a null check. | |
| (WebInspector.TextEditor.prototype._breakVisibleTextChunksIntoSingleLineTextChunks): | |
| Save at the beginning the text selection, and restore it at the end. | |
| (WebInspector.TextEditor.prototype._consolidateHiddenSingleLineTextChunks): Ditto. | |
| 2012-08-14 Timothy Hatcher <timothy@apple.com> | |
| Make the "Show Error Console" and "Show Page Source" menu items also change the selected navigator | |
| to match the view showing in the content browser. | |
| <rdar://problem/12058796> Web Inspector comes up in an inconsistent state, always showing the console | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showConsole): Select the Log sidebar. | |
| (InspectorFrontendAPI.showMainResourceForFrame): Select the Resource sidebar. | |
| 2012-08-03 Timothy Hatcher <timothy@apple.com> | |
| Disable pause on exception by default. | |
| Developers are confused that pause on uncaught exceptions is enabled by default. | |
| <rdar://problem/12025998> | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): Change true to false for the "break-on-all-uncaught-exceptions" | |
| setting default value. | |
| 2012-08-01 Timothy Hatcher <timothy@apple.com> | |
| Update CSSKeywordCompletions.js. | |
| <rdar://problem/12008709> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSKeywordCompletions.js: Merge r124016 from WebKit. | |
| 2012-08-01 Timothy Hatcher <timothy@apple.com> | |
| DOMStorageObserver.updateDOMStorage should be DOMStorageObserver.domStorageUpdated. | |
| "updateDOMStorage" was renamed to "domStorageUpdated" in WebKit r118349. We need to support | |
| the old and new name for backwards compatibility. | |
| <rdar://problem/12008490> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Added comment. Call domStorageUpdated. | |
| (WebInspector.DOMStorageObserver.prototype.domStorageUpdated): Added. Does what updateDOMStorage did. | |
| 2012-07-31 Timothy Hatcher <timothy@apple.com> | |
| Show the file and line number instead of a go-to arrow for style rules and event listeners. | |
| <rdar://problem/11347946> REGRESSION (New Web Inspector): Inspector does not show filename/line number for CSS rules | |
| Reviewed by John Sullivan. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section .header .title .media a): Added !important to color. Renamed from .subtitle. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.simple > .label): Remove duplicate padding property, set padding-left to be 6px. | |
| (.details-section > .content > .group > .row.simple > .value): Set padding-right to be 6px. | |
| (.details-section > .content > .group > .row.properties): Make left and right padding equal. | |
| * UserInterface/EventListenerSectionGroup.css: | |
| (.event-listener-section > .content > .group > .row.simple > .value .go-to-arrow): Removed. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): Use WebInspector.createResourceLink. | |
| * UserInterface/Main.css: | |
| (.go-to-link): Added. | |
| (.go-to-link:not(.dont-float)): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.createResourceLink): Added. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Use WebInspector.createResourceLink. | |
| (WebInspector.StylePropertiesSection.prototype._linkify): Removed. | |
| (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode): Use WebInspector.createResourceLink. | |
| 2012-07-28 Timothy Hatcher <timothy@apple.com> | |
| Make reloading while viewing a resource in the Web Inspector show the main resource. | |
| This keeps you looking at resources instead of dumping you into a log or timeline view. | |
| This was only an issue if you had viewed a log or timeline before viewing a resource. | |
| <rdar://problem/11981540> Reloading while viewing a resource sometimes switches to the Log or Timeline | |
| Reviewed by John Sullivan. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Remember if the current view was one | |
| that we care about before closing them. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork): Show the main frame since | |
| there is no content view showing or we were showing a resource before. | |
| 2012-07-28 Timothy Hatcher <timothy@apple.com> | |
| Make selection of a navigator in the Web Inspector show the last selected content view from that navigator. | |
| This makes switching between different content quicker, especially for the Resource, Instrument and Log | |
| navigators which have default initial selections. | |
| <rdar://problem/10854727> Selecting the Log sidebar should select a log by default | |
| Reviewed by John Sullivan. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Make the Network Requests timeline selected by default. | |
| (WebInspector.InstrumentSidebarPanel.prototype.shown): | |
| (WebInspector.InstrumentSidebarPanel.prototype._timelinesTreeElementSelected): Deselect any tree element | |
| in the main content tree outline to prevent two selections in the sidebar. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileSelected): Deselect any tree element in the timelines | |
| tree outline to prevent two selections in the sidebar. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): Select the Current Log tree element by default the first time. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Move some settings above this.navigationSidebar.selectedSidebarPanel to prevent | |
| an exception from accessing them before they are set. This was triggered by the new code in NavigationSidebarPanel.shown. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.shown): Reselect the selected tree element to cause the content view | |
| to be shown as well. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Select the main frame tree element by default. | |
| 2012-07-26 Timothy Hatcher <timothy@apple.com> | |
| Make searching source code via the find banner fast again. | |
| <rdar://problem/11955081> REGRESSION (New Web Inspector): Searching large resources via Find Banner is dramatically slower than Safari 5 | |
| Reviewed by John Sullivan. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype.customPerformSearch): Added. Uses the backend agents to do a quick search pass before doing | |
| the inner-line matches. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get currentSearchQuery): Added. Needed by SourceCodeTextEditor.customPerformSearch. | |
| (WebInspector.TextEditor.prototype.performSearch): Use searchCleared to fully clear the previous results. | |
| (WebInspector.TextEditor.prototype.performSearch.batchSearch): Use addSearchResultRange for adding a new result. | |
| (WebInspector.TextEditor.prototype.addSearchResultRange): Added. Factored out of performSearch.batchSearch. Calls _updateLineForSearchResultMatchSoon. | |
| (WebInspector.TextEditor.prototype.searchCleared): Clear _pendingSearchResultLineNumbers. | |
| (WebInspector.TextEditor.prototype._updateLineForSearchResultMatchSoon): Added. Helper for batching line updates. | |
| (WebInspector.TextEditor.prototype._updateLineForSearchResultMatchSoon.delayedWork): Added. Factored out of performSearch.batchSearch. | |
| 2012-07-11 Mark Rowe <mrowe@apple.com> | |
| Build against the latest SDK when targeting older OS X versions. | |
| The deployment target is already set to the version that we're targeting, and it's that setting | |
| which determines which functionality from the SDK is available to us. | |
| Reviewed by Dan Bernstein. | |
| * Configurations/Base.xcconfig: | |
| 2012-06-18 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception when viewing a JavaScript profile with milliseconds instead of percentages. | |
| <rdar://problem/11691663> REGRESSION (New Web Inspector): Exception when viewing JavaScript Profile, making profiles unusable | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds): Pass true for the last argument of Number.secondsToString. | |
| 2012-06-16 Timothy Hatcher <timothy@apple.com> | |
| Show Resource details for the selected row in Network requests. | |
| <rdar://problem/11683757> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.select): Fire the WebInspector.DataGrid.Event.SelectedNodeChanged event. | |
| (WebInspector.DataGridNode.prototype.deselect): Ditto. | |
| * UserInterface/Main.html: Include ResourceTimelineDataGridNodePathComponent.js. | |
| * UserInterface/ResourceTimelineDataGridNodePathComponent.js: Added. | |
| (WebInspector.ResourceTimelineDataGridNodePathComponent): | |
| (WebInspector.ResourceTimelineDataGridNodePathComponent.prototyp.get resourceTimelineDataGridNode): | |
| (WebInspector.ResourceTimelineDataGridNodePathComponent.prototype.get previousSibling): | |
| (WebInspector.ResourceTimelineDataGridNodePathComponent.prototype.get nextSibling): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Add WebInspector.DataGrid.Event.SelectedNodeChanged listener. | |
| (WebInspector.TimelinesContentView.prototype.get selectionPathComponents): Include a ResourceTimelineDataGridNodePathComponent | |
| if the selected node is a ResourceTimelineDataGridNode. | |
| (WebInspector.TimelinesContentView.prototype._dataGridNodePathComponentSelected): Added. Reveal and select the node. | |
| (WebInspector.TimelinesContentView.prototype._selectedNodeChanged): Dispatch WebInspector.ContentView.Event.SelectionPathComponentsDidChange. | |
| 2012-06-09 Timothy Hatcher <timothy@apple.com> | |
| Switch the Web Inspector over to use tab-size for the source code view. | |
| <rdar://problem/11633291> Use tab-size CSS property in the Web Inspector instead of an inline-block | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/SyntaxHighlighter.js: | |
| (WebInspector.SyntaxHighlighter.CharacterTokens): Removed \t. | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: | |
| (.syntax-highlighted): Added tab-size: 4. | |
| (.syntax-highlighted .tab): Removed. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.createSyntaxHighlightedDocumentFragment): Removed tab token support. | |
| 2012-06-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11613940> DataGrid column collapser button should have a tooltip | |
| Reviewed by Darin Adler and Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): | |
| (WebInspector.DataGrid.prototype._collapseColumnGroupWithCell): | |
| (WebInspector.DataGrid.prototype._collapserButtonCollapseColumnsToolTip): | |
| (WebInspector.DataGrid.prototype._collapserButtonExpandColumnsToolTip): | |
| 2012-05-30 Joseph Pecoraro <pecoraro@apple.com> | |
| Workaround for: <rdar://problem/11536832> Cannot access content view from Instruments navigator if name of file is truncated | |
| Implement a workaround so that go-to arrows still work in situations | |
| where text boxes incorrectly prevent them from being clickable. | |
| Giving the arrows a z-index always makes them work. | |
| Reviewed by Timothy hatcher. | |
| * UserInterface/Main.css: | |
| (.go-to-arrow): | |
| 2012-05-25 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11538965> Breakpoint callframe tooltips show wrong line number | |
| ScriptLocation lineNumber is 0-based. Convert to 1-based for display. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): | |
| 2012-05-24 Timothy Hatcher <timothy@apple.com> | |
| Make the WebInspector.framework build 32/64-bit universal to match WebKit. | |
| Since WebKit links against the WebInspector framework, they need to support | |
| the same architectures. Otherwise, the framework fails to load when soft | |
| linking and the resources aren't found, which causes an exception/crash. | |
| <rdar://problem/11373948> Crash opening the Web Inspector in 32-bit apps | |
| Reviewed by Joseph Pecoraro. | |
| * Configurations/Base.xcconfig: Set VALID_ARCHS to ARCHS_STANDARD_32_64_BIT. | |
| * Configurations/DebugRelease.xcconfig: Set ARCHS to ARCHS_STANDARD_32_64_BIT. | |
| 2012-05-23 Timothy Hatcher <timothy@apple.com> | |
| Fix some occasional assertions and an exception that happens in CSSStyleDetailsSidebarPanel. | |
| These can happen if there is an error from the protocol when fetching the CSS rules. Now when | |
| this happens the sidebar will not show stale data. | |
| <rdar://problem/11516416> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.matchedStylesCallback): Added fallback values. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Ditto. | |
| 2012-05-22 Timothy Hatcher <timothy@apple.com> | |
| Fix a regression that would cause resource content to overlap when reloading. | |
| <rdar://problem/11509620> REGRESSION (r42994): Overlapping content views when navigating | |
| Reviewed by Kevin Decker. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViewsOfPrototype): Use oldCurrentContentView | |
| in the loop. The currentContentView variable is not declared until after the loop, so using currentContentView | |
| is just comparing to undefined at this point. | |
| 2012-05-21 Timothy Hatcher <timothy@apple.com> | |
| Fixes an uncaught exception in WebInspector.ContentBrowser._currentContentViewDidChange. | |
| This event fires when all content views are closed and there is no longer a current view. | |
| The code under this listener was not properly null checking the content view. | |
| <rdar://problem/11467085> ContentBrowser has uncaught exception on reload needs to handle null currentContentView | |
| Reviewed by Oliver Hunt. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._updateHierarchicalPathNavigationItem): Added null check for representedObject. | |
| (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem): Added null check for contentView. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Added null check for currentContentView. | |
| 2012-05-16 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11468003> REGRESSION: Error log messages contains wrong line number in jump link | |
| The Log messages coming from the backend contain the expected, file and 1-based | |
| line number. In the Safari inspector _linkifyLocation was adjusting this to 0-based | |
| and using the 0-based line number as the display text. The OpenSource inspector's | |
| linkifier uses WebInspector.formatLinkText for display text which adds back the 1. | |
| The Safari inspector does not have that. We can just display the correct line number. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): | |
| 2012-05-11 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where the DOM Tree and Source Code would overlap. | |
| <rdar://problem/11329121> REGRESSION (r42567): Overlapping display DOM Tree and Source Code | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.showContentView): Remove assert and call to _removeContentViewElement. | |
| The content view is already guaranteed to be removed. The _disassociateFromContentView function now does the assert. | |
| (WebInspector.ContentViewContainer.prototype.showBackForwardEntry): Return early if it is the same index. Fire the | |
| CurrentContentViewDidChange event here since _showContentView no longer fires it. | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViewsOfPrototype): Remove call to _removeContentViewElement. | |
| Only call _showContentView and fire the CurrentContentViewDidChange event if the content view actually changed. | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Remove call to _removeContentViewElement. | |
| Fire the CurrentContentViewDidChange event here since _showContentView no longer fires it. | |
| (WebInspector.ContentViewContainer.prototype.shown): Call _showContentView instead of _prepareContentViewToShow. | |
| (WebInspector.ContentViewContainer.prototype.hidden): Call _hideContentView instead of _prepareContentViewToShow. | |
| (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Added assert for visible. | |
| (WebInspector.ContentViewContainer.prototype._showContentView): Added assert for visible. Removed event dispatch. | |
| (WebInspector.ContentViewContainer.prototype._hideContentView): Added assert for visible. | |
| 2012-05-10 Timothy Hatcher <timothy@apple.com> | |
| Timer events in the WebInspector should show where they were scheduled from. | |
| Depends on: https://webkit.org/b/86173 | |
| <rdar://problem/11427463> | |
| Reviewed by John Sullivan. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Process TimerFire when the corresponding | |
| EvaluateScript or FunctionCall record is encountered so we can gather the resource and line number. | |
| 2012-05-10 Timothy Hatcher <timothy@apple.com> | |
| Use a static copy of InspectorBackend.js and InspectorBackendCommands.js. | |
| This fixes a build failure since WebCore renamed the file we were coping. | |
| For compatibility reasons we should use a static copy of the InspectorBackend instead | |
| of copying the latest version from WebCore during the build. Using a stable version of | |
| the InspectorBackend guarantees a constant API for the front-end and protocol level | |
| changes in WebCore are compatible with older versions of the InspectorBackend. | |
| <rdar://problem/11426912> | |
| * Scripts/copy-user-interface-resources.sh: Removed copy commands from derived sources. | |
| * UserInterface/InspectorBackend.js: Copied from OpenSource r116449. | |
| * UserInterface/InspectorBackendCommands.js: Ditto. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Removed build phase to copy from WebCore. | |
| 2012-04-26 Timothy Hatcher <timothy@apple.com> | |
| Update the Web Inspector to work with recent protocol changes. | |
| <rdar://problem/11329835> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved): Pass undefined for the args parameter of callFunction. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._createTooltipForNode.resolvedNode): Ditto. | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt.prototype.evalInInspectedWindow): Renamed doNotPauseOnExceptions to doNotPauseOnExceptionsAndMuteConsole. | |
| Pass doNotPauseOnExceptionsAndMuteConsole to evaluateOnCallFrame. | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions.evaluated): Pass undefined for the args parameter of callFunctionJSON. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): Removed stackTrace parameter. | |
| * UserInterface/RemoteObject.js: | |
| (WebInspector.RemoteObject.prototype.setPropertyValue): Renamed doNotPauseOnExceptions to doNotPauseOnExceptionsAndMuteConsole. | |
| Pass true for doNotPauseOnExceptionsAndMuteConsole in RuntimeAgent.callFunctionOn. | |
| (WebInspector.RemoteObject.prototype.callFunction): Added args parameter and pass it along. Pass true for doNotPauseOnExceptionsAndMuteConsole. | |
| (WebInspector.RemoteObject.prototype.callFunctionJSON): Ditto. | |
| 2012-04-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11287053> ApplicationCache sorting Resource column is broken | |
| The items being sorted in the data grid are ApplicationCacheResources | |
| from the Inspector protocol. Those resources do not have a "name" | |
| property. Only "url", "size", and "type". | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._populateDataGrid): | |
| 2012-04-20 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11287121> REGRESSION: Inspector window should move to front when you hit a breakpoint | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector._debuggerDidPause): | |
| 2012-04-18 Timothy Hatcher <timothy@apple.com> | |
| Fix an regression where issues were replacing the content view when they should be inline. | |
| This also fixes an regression where issue lines were not highlighting because the style class | |
| was not being applied, 'undefined' was. | |
| <rdar://problem/11180526> REGRESSION (r41932-r41943): ResourceContentView was only showing | |
| an error message and not content | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Only add issue event listener and issues if !managesOwnIssues. | |
| (WebInspector.ResourceContentView.prototype.closed): Remove issue event listener only if !managesOwnIssues. | |
| (WebInspector.ResourceContentView.prototype._issueWasAdded): Assert !managesOwnIssues. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._addIssueToLine): Use the connect object for the style classes. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.get managesOwnIssues): Added. Return true. | |
| 2012-04-16 Timothy Hatcher <timothy@apple.com> | |
| Save and restore the scroll position for content views when hiding and showing. | |
| <rdar://problem/11184241> REGRESSION (New Web Inspector): Console log view scroll offset | |
| does not follow most recent messages | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.shown): Call shown directly on the _contentViewContainer. | |
| (WebInspector.ClusterContentView.prototype.hidden): Ditto for hidden. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get visible): Use a simple boolean. | |
| (WebInspector.ContentView.prototype.set visible): Ditto. | |
| (WebInspector.ContentView.prototype.get scrollableElements): Added stub. | |
| (WebInspector.ContentView.prototype.get keepElementsScrolledToTheBottom): Added stub. | |
| * UserInterface/ContentViewContainer.css: | |
| (.content-view-container > .content-view): Removed. Using display: none was pointless since the | |
| element is removed from the DOM. This prevented saving scroll positions. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.shown): Added. Calls _prepareContentViewToShow. | |
| (WebInspector.ContentViewContainer.prototype.hidden): Added. Calls _prepareContentViewToHide. | |
| (WebInspector.ContentViewContainer.prototype._saveScrollPositionsForContentView): Added. | |
| (WebInspector.ContentViewContainer.prototype._restoreScrollPositionsForContentView): Added. | |
| (WebInspector.ContentViewContainer.prototype._showContentView): Calls _prepareContentViewToShow. | |
| (WebInspector.ContentViewContainer.prototype._prepareContentViewToShow): Added. Calls | |
| _restoreScrollPositionsForContentView in addition to the work _showContentView did. | |
| (WebInspector.ContentViewContainer.prototype._hideContentView): Calls _prepareContentViewToHide. | |
| (WebInspector.ContentViewContainer.prototype._prepareContentViewToHide): Added. Calls | |
| _saveScrollPositionsForContentView in addition to the work _hideContentView did. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/DatabaseTableContentView.js: | |
| (WebInspector.DatabaseTableContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Removed _scrolledToBottom. | |
| (WebInspector.LogContentView.prototype.consoleCleared): Removed _scrolledToBottom. | |
| (WebInspector.LogContentView.prototype.hidden): Removed call to storeScrollPositions. | |
| (WebInspector.LogContentView.prototype.get scrollableElements): Added. | |
| (WebInspector.LogContentView.prototype.get keepElementsScrolledToTheBottom): Added. | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView.prototype.get scrollableElements): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.get contentContainerElement): Added. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get scrollableElements): Added. | |
| 2012-04-14 Timothy Hatcher <timothy@apple.com> | |
| Add support for searching the DOM tree with the Find Banner. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the DOM tree and source | |
| code view (no Find banner is present) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.get supportsSearch): Added. Return true. | |
| (WebInspector.DOMTreeContentView.prototype.get numberOfSearchResults): Added. | |
| (WebInspector.DOMTreeContentView.prototype.performSearch): Added. Clear previous results and call | |
| DOMAgent.performSearch. | |
| (WebInspector.DOMTreeContentView.prototype.performSearch.searchResultsReady): Store the identifier and | |
| fire the NumberOfSearchResultsDidChange event. | |
| (WebInspector.DOMTreeContentView.prototype.searchCleared): Added. Clear the result and state. | |
| (WebInspector.DOMTreeContentView.prototype.revealPreviousSearchResult): Added. Call _revealSearchResult. | |
| (WebInspector.DOMTreeContentView.prototype.revealNextSearchResult): Added. Ditto. | |
| (WebInspector.DOMTreeContentView.prototype._revealSearchResult): Added. Call DOMAgent.getSearchResults. | |
| (WebInspector.DOMTreeContentView.prototype._revealSearchResult.revealResult): Select the DOM node. | |
| 2012-04-14 Timothy Hatcher <timothy@apple.com> | |
| Show the yellow bouncy when highlighting the current search result. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the DOM tree and source | |
| code view (no Find banner is present) | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor .bouncy-highlight): Added. | |
| (@-webkit-keyframes bouncy): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._revealSearchResultTextRange): Create and add the bouncy element, | |
| positioned to line up with the search result element. | |
| 2012-04-13 Timothy Hatcher <timothy@apple.com> | |
| Support searching via the find banner on text resources and scripts. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the DOM tree and source | |
| code view (no Find banner is present) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ScriptContentView.js: | |
| (WebInspector.ScriptContentView): Add event listener for TextEditor.Event.NumberOfSearchResultsDidChange. | |
| (WebInspector.ScriptContentView.prototype.get supportsSearch): Return true. | |
| (WebInspector.ScriptContentView.prototype.get numberOfSearchResults): Forward to _textEditor. | |
| (WebInspector.ScriptContentView.prototype.performSearch): Ditto. | |
| (WebInspector.ScriptContentView.prototype.searchCleared): Ditto. | |
| (WebInspector.ScriptContentView.prototype.revealPreviousSearchResult): Ditto. | |
| (WebInspector.ScriptContentView.prototype.revealNextSearchResult): Ditto. | |
| (WebInspector.ScriptContentView.prototype._numberOfSearchResultsDidChange): Added. Fire ContentView.Event.NumberOfSearchResultsDidChange. | |
| * UserInterface/SyntaxHighlighter.js: | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: | |
| (.supports-find-banner.showing-find-banner .syntax-highlighted .search-result): Added. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.createTokenElement): Added parameter for search result. Append the search-result | |
| class when needed. Fixes the quoting for links now that the attribute range can be split by a search result. | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.appendText): Changed to work with enumerateAttributes instead of enumerateAttribute. | |
| Check for the search result attribute. Call createTokenElement for search results. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.get numberOfSearchResults): Added. | |
| (WebInspector.TextEditor.prototype.performSearch): Added. Iterate over the lines in batches to prevent blocking too long. | |
| (WebInspector.TextEditor.prototype.performSearch.reportNumberOfSearchResultsDidChange): | |
| (WebInspector.TextEditor.prototype.performSearch.batchSearch): Loop over lines and perform a regex to find matches. | |
| (WebInspector.TextEditor.prototype.searchCleared): Added. Clear the results and remove the attribute from the lines. | |
| (WebInspector.TextEditor.prototype.revealPreviousSearchResult): Added. Decrement the index and call _revealSearchResultTextRange. | |
| (WebInspector.TextEditor.prototype.revealNextSearchResult): Added. Increment the index and call _revealSearchResultTextRange. | |
| (WebInspector.TextEditor.prototype._revealSearchResultTextRange): Added. Helper for revealPreviousSearchResult and revealNextSearchResult. | |
| (WebInspector.TextEditor.prototype._removeSearchResultStyles): Added. Query for all the search results and remove the style. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Add event listener for TextEditor.Event.NumberOfSearchResultsDidChange. | |
| (WebInspector.TextResourceContentView.prototype.get supportsSearch): Return true. | |
| (WebInspector.TextResourceContentView.prototype.get numberOfSearchResults): Forward to _textEditor. | |
| (WebInspector.TextResourceContentView.prototype.performSearch): Ditto. | |
| (WebInspector.TextResourceContentView.prototype.searchCleared): Ditto. | |
| (WebInspector.TextResourceContentView.prototype.revealPreviousSearchResult): Ditto. | |
| (WebInspector.TextResourceContentView.prototype.revealNextSearchResult): Ditto. | |
| (WebInspector.TextResourceContentView.prototype._numberOfSearchResultsDidChange): Added. Fire ContentView.Event.NumberOfSearchResultsDidChange. | |
| 2012-04-13 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for next and previous search results. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the DOM tree | |
| and source code view (no Find banner is present) | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): Added keyboard shortcuts for Command-G and Command-Shift-G. | |
| 2012-04-05 Timothy Hatcher <timothy@apple.com> | |
| Add support to WebInspector.ContentView for dealing with the find banner. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the DOM tree and | |
| source code view (no Find banner is present) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView): | |
| (WebInspector.ClusterContentView.prototype.get supportsSearch): Added. Always return true. | |
| (WebInspector.ClusterContentView.prototype.get numberOfSearchResults): Added. Forward to the current content view. | |
| (WebInspector.ClusterContentView.prototype.performSearch): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype.searchCleared): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype.revealPreviousSearchResult): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype.revealNextSearchResult): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype._currentContentViewDidChange): Dispatch the | |
| NumberOfSearchResultsDidChange event. | |
| (WebInspector.ClusterContentView.prototype._contentViewNumberOfSearchResultsDidChange): Re-dispatch | |
| the NumberOfSearchResultsDidChange event with this content view as the target. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype.findBannerPerformSearch): Added. Forward to the current content view. | |
| (WebInspector.ContentBrowser.prototype.findBannerSearchCleared): Added. Ditto. | |
| (WebInspector.ContentBrowser.prototype.findBannerRevealPreviousResult): Added. Ditto. | |
| (WebInspector.ContentBrowser.prototype.findBannerRevealNextResult): Added. Ditto. | |
| (WebInspector.ContentBrowser.prototype._showFindBanner): Don't show if the current content view does not support search. | |
| (WebInspector.ContentBrowser.prototype._contentViewNumberOfSearchResultsDidChange): Added. Update the find banner. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get supportsSearch): Added stub. | |
| (WebInspector.ContentView.prototype.get numberOfSearchResults): Added stub. | |
| (WebInspector.ContentView.prototype.performSearch): Added stub. | |
| (WebInspector.ContentView.prototype.searchCleared): Added stub. | |
| (WebInspector.ContentView.prototype.revealPreviousSearchResult): Added stub. | |
| (WebInspector.ContentView.prototype.revealNextSearchResult): Added stub. | |
| * UserInterface/FindBanner.js: | |
| (WebInspector.FindBanner): Added event listeners. | |
| (WebInspector.FindBanner.prototype._inputFieldChanged): Added. Call the delegate. | |
| (WebInspector.FindBanner.prototype._previousResultButtonClicked): Added. Ditto. | |
| (WebInspector.FindBanner.prototype._nextResultButtonClicked): Added. Ditto. | |
| 2012-04-02 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FindBanner which implements the user interface for searching in content views. | |
| The banner shows via Command-F and hides with Escape. Searching is not hooked up yet. | |
| Part of: <rdar://problem/11039642> REGRESSION (New Web Inspector): Can't search in the | |
| DOM tree and source code view (no Find banner is present) | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Create a FindBanner and keyboard shortcut for Command-F. | |
| (WebInspector.ContentBrowser.prototype._showFindBanner): Added. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Change the target element | |
| of the find banner to the new content view. | |
| * UserInterface/ContentViewContainer.css: | |
| (.content-view-container): Added overflow hidden so the find-banner does not show when hidden. | |
| (.content-view-container > .content-view): Ditto. | |
| * UserInterface/FindBanner.css: Added. | |
| * UserInterface/FindBanner.js: Added. | |
| (WebInspector.FindBanner): | |
| (WebInspector.FindBanner.prototype.get delegate): | |
| (WebInspector.FindBanner.prototype.set delegate): | |
| (WebInspector.FindBanner.prototype.get element): | |
| (WebInspector.FindBanner.prototype.get inputField): | |
| (WebInspector.FindBanner.prototype.get searchQuery): | |
| (WebInspector.FindBanner.prototype.set searchQuery): | |
| (WebInspector.FindBanner.prototype.get numberOfResults): | |
| (WebInspector.FindBanner.prototype.set numberOfResults): | |
| (WebInspector.FindBanner.prototype.get targetElement): | |
| (WebInspector.FindBanner.prototype.set targetElement.delayedWork): | |
| (WebInspector.FindBanner.prototype.set targetElement): | |
| (WebInspector.FindBanner.prototype.show.delayedWork): | |
| (WebInspector.FindBanner.prototype.show): | |
| (WebInspector.FindBanner.prototype.hide): | |
| (WebInspector.FindBanner.prototype._doneButtonClicked): | |
| (WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded): | |
| * UserInterface/Main.html: Included FindBanner.css and FindBanner.js. | |
| 2012-04-13 Timothy Hatcher <timothy@apple.com> | |
| Use searchRegex.lastIndex instead of lineMatch.index + searchTerm.length. | |
| When creating TextRanges in SearchSidebarPanel it is better to use lastIndex instead of the search term length. | |
| This isn't a bug now, but it could be later when we support regex search queries in addition of plan text searches. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.performSearch.resourcesCallback.resourceCallback): Use searchRegex.lastIndex. | |
| (WebInspector.SearchSidebarPanel.prototype.performSearch.domCallback.domSearchResults): Ditto. | |
| 2012-04-05 Timothy Hatcher <timothy@apple.com> | |
| Add better support for getting and setting the text selection in WebInspector.TextEditor. | |
| This will be needed for the find banner support. <rdar://problem/11193282> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.get selectedTextRange): Added. | |
| (WebInspector.TextEditor.prototype.set selectedTextRange): Added. | |
| (WebInspector.TextEditor.prototype.revealLine): Use the selectedTextRange setter. | |
| (WebInspector.TextEditor.prototype._textRangeToDOMRange): Added. Use _textPositionToDOMLocation | |
| to get the start and end and make a new Range. | |
| (WebInspector.TextEditor.prototype._domRangeToTextRange): Added. Use _domLocationToTextPosition | |
| to get the start and end and make a new TextRange. | |
| (WebInspector.TextEditor.prototype._domLocationToTextPosition): Added. | |
| (WebInspector.TextEditor.prototype._textPositionToDOMLocation): Added. | |
| (WebInspector.TextEditorTextChunk): Set _textChunk on the element. | |
| * UserInterface/Utilities.js: | |
| (Node.prototype.traverseNextTextNode): Added. Copied from OpenSource utilities.js. | |
| (Node.prototype.rangeBoundaryForOffset): Added. Ditto. | |
| 2012-04-02 Timothy Hatcher <timothy@apple.com> | |
| Add support for disabling keyboard shortcuts and unbinding them altogether. | |
| You might disable a shortcut to make it only apply when a content view is showing, but still | |
| have the shortcut be global. Also added support for unbinding a shortcut if you need to remove | |
| it altogether from the document. | |
| This is likely to be required for find banner support. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/KeyboardShortcut.js: | |
| (WebInspector.KeyboardShortcut): | |
| (WebInspector.KeyboardShortcut.prototype.get disabled): Added. | |
| (WebInspector.KeyboardShortcut.prototype.set disabled): Added. | |
| (WebInspector.KeyboardShortcut.prototype.unbind): Added. Removes the shortcut from the target. | |
| (WebInspector.KeyboardShortcut.prototype.matchesEvent): Return early if disabled. | |
| 2012-04-02 Timothy Hatcher <timothy@apple.com> | |
| Make it possible to generate colored images at different sizes than the intrinsic image size. | |
| This is useful when the input image is a PDF and a different size is needed. This support | |
| is needed for the find banner back/forward arrows. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): Added optional width and height parameters. Use the intrinsic width and | |
| height as fallback. | |
| (generateColoredImagesForCSS.generateImage): Pull the width and height out of the specification. | |
| Use the intrinsic width and height as fallback. Pass the width and height to generateColoredImage | |
| with a scale of 1 now that the pixelRatio is now premultiplied in the width and height. | |
| 2012-04-02 Timothy Hatcher <timothy@apple.com> | |
| Tweak the colors and gradients used by the search sidebar to match other bars in the Web Inspector. | |
| If only we had variables in CSS... | |
| Reviewed by John Sullivan. | |
| * UserInterface/SearchSidebarPanel.css: | |
| (.sidebar > .panel.search > .search-bar): Tweaked the colors to match the ones in TimelinesContentView.css | |
| the upcoming FindBanner.css. | |
| 2012-04-12 Timothy Hatcher <timothy@apple.com> | |
| Create a funnel point for display names of URLs and hosts, and properly decode lastPathComponent. | |
| This decodes lastPathComponent as a URL escaped string. The host needs to be decoded as a punycode string, | |
| but that isn't easily done in JavaScript so <rdar://problem/11237413> tracks that. | |
| <rdar://problem/11236933> High-ascii web addresses show corrupted in Web Inspector | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._updateCallback): Remove unused lastPathComponent var. | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: | |
| (WebInspector.ApplicationCacheFrameTreeElement.prototype.updateTitles): Use displayNameForURL and displayNameForHost. | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype._generateTitles): Ditto. | |
| * UserInterface/CallFrameTreeElement.js: | |
| (WebInspector.CallFrameTreeElement): Use displayNameForURL. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): Ditto. | |
| * UserInterface/CookieStorageTreeElement.js: | |
| (WebInspector.CookieStorageTreeElement): Use displayNameForHost. | |
| * UserInterface/DOMStorageTreeElement.js: | |
| (WebInspector.DOMStorageTreeElement): Ditto. | |
| (WebInspector.DOMStorageTreeElement.prototype.get name): Ditto. | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| (WebInspector.DatabaseHostTreeElement): Ditto. | |
| (WebInspector.DatabaseHostTreeElement.prototype.get name): Ditto. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): Use displayNameForURL. | |
| * UserInterface/Main.js: | |
| (WebInspector.displayNameForURL): Added. Use decodeURIComponent for lastPathComponent and displayNameForHost for host. | |
| (WebInspector.displayNameForHost): Added. Returns the input, with a comment about decoding punycode. | |
| (WebInspector.updateWindowTitle): Use decodeURIComponent for lastPathComponent and displayNameForHost for host. | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype._linkifyLocation): Use displayNameForURL. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get data): Use displayNameForURL and displayNameForHost. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Ditto. | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): Use displayNameForURL. | |
| * UserInterface/ScriptTreeElement.js: | |
| (WebInspector.ScriptTreeElement): Use displayNameForURL and displayNameForHost. | |
| 2012-04-11 Timothy Hatcher <timothy@apple.com> | |
| Strip common error message prefixes from the message line in the Issue sidebar. | |
| The prefix is used to determine the title line, so it redundant to include it in the message. | |
| And removing it from the message gives more room for the important info of the message. | |
| <rdar://problem/11219712> Can't see entire content of errors in the Issue sidebar | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/IssueMessage.js: | |
| (WebInspector.IssueMessage): Determine the type based on source and text prefix matching. | |
| Removed _source property, and added _type to replace it. | |
| (WebInspector.IssueMessage.Type.displayName): Added. | |
| (WebInspector.IssueMessage.prototype.get type): Renamed from source and return _type instead. | |
| * UserInterface/IssueTreeElement.js: | |
| (WebInspector.IssueTreeElement): Use a switch for the level instead of raw string comparison. | |
| Use WebInspector.IssueMessage.Type.displayName to get the title. | |
| (WebInspector.IssueTreeElement.titleForIssue): Removed. | |
| 2012-04-09 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for pause/continue, step over, step into and step out. | |
| This matches Xcode's keyboard shortcuts and also supports the original Web Inspector | |
| keyboard shortcuts for compatibility. | |
| <rdar://problem/11205675> Debugger keyboard shortcuts are broken (step into, step over, etc) | |
| Reviewed by John Sullivan. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Create the KeyboardShortcuts and show them in the tooltips. | |
| (WebInspector.QuickConsole.prototype.set collapsed): Add the keyboard shortcut to the tooltips. | |
| (WebInspector.QuickConsole.prototype._debuggerDidPause): Ditto. | |
| (WebInspector.QuickConsole.prototype._debuggerDidResume): Ditto. | |
| 2012-04-07 Timothy Hatcher <timothy@apple.com> | |
| Make the completion popup look like the one in Xcode. | |
| <rdar://problem/11201824> Console: Autocomplete suggestion list is ugly (has wrong typeface) | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextPrompt.css: | |
| (.suggest-box): | |
| (.suggest-box .container): | |
| (.suggest-box-content-item): | |
| (.suggest-box-content-item.selected): | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.SuggestBox.prototype._updateBoxPosition): Adjusted padding. Impose a max | |
| height of 160, which turns out to be 10 items. | |
| 2012-04-07 Timothy Hatcher <timothy@apple.com> | |
| Make the completion popup work when the console is scrolled. | |
| <rdar://problem/11184504> "Current Log" console input is way broken when using inline completion popup | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Utilities.js: | |
| (Element.prototype.offsetRelativeToWindow): Removed. boxInWindow was the only client. | |
| (Element.prototype.boxInWindow): Removed targetWindow parameter, the only client always passed 'window'. | |
| Use getClientRects instead of the broken offsetRelativeToWindow. | |
| 2012-04-06 Timothy Hatcher <timothy@apple.com> | |
| Make console completion behave more like Xcode's auto completion. | |
| This makes the suggestion popup appear for single items and completions are always shown | |
| as unselected grey text, not a selected range. The tab key now also accepts the completion. | |
| <rdar://problem/11201751> Console: Tab to autocomplete does not work | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt.prototype._completionsReady): Always pass true for canShowForSingleItem when call | |
| _suggestBox.updateSuggestions. | |
| (WebInspector.TextPrompt.prototype._completionsReady): Remove the auto completion path. There is now only | |
| one completion style, handled by applySuggestion. | |
| (WebInspector.TextPrompt.prototype.applySuggestion): Don't select the completion, do the what _completionsReady | |
| did for the auto complete path -- create an auto complete element for the grey text. | |
| (WebInspector.TextPrompt.prototype.tabKeyPressed): Call tabKeyPressed on _suggestBox to accept the completion | |
| instead of doing nothing. | |
| 2012-04-06 Timothy Hatcher <timothy@apple.com> | |
| Make the reload keyboard shortcut work when an input field is focused. | |
| This makes the reload shortcuts and quick console toggle use the KeyboardShortcut class. | |
| <rdar://problem/11187008> Web Inspector is very picky about what has to be focused in order to reload the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Remove keydown event listener. Added reload keyboard shortcuts. | |
| (WebInspector._reloadPage): Added. | |
| (WebInspector._reloadPageIgnoringCache): Added. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Added toggle or focus keyboard shortcut. | |
| (WebInspector.QuickConsole.prototype._toggleOrFocus): Added. | |
| 2012-04-02 Timothy Hatcher <timothy@apple.com> | |
| Select the contents of the search field when pressing the Command-Shift-F keyboard shortcut. | |
| In addition to focusing the field, we now select the contents. This matches behavior of all | |
| search fields tied to keyboard shortcuts. | |
| <rdar://problem/11169101> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._focusSearchField): Call select() on the field. | |
| 2012-04-05 Timothy Hatcher <timothy@apple.com> | |
| Make clicking search results select the text range again. | |
| This broke when the TextEditor content element was made user modifiable. When a user modifiable region is blurred | |
| it loses its selection. To prevent this we make it user modifiable only when focused. | |
| <rdar://problem/11193282> REGRESSION (r42062): Search results are not selected when clicked in the Search sidebar | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .content-container > .content): Removed -webkit-user-modify. | |
| (.text-editor > .content-container > .content:focus): Added. Set -webkit-user-modify here when focused. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Set a tabIndex so the content can be focused when not user modifiable. | |
| 2012-03-31 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11160188> Headers in resource details sidebar panel should be sortable | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid.sortDataGrid.comparator): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid.sortDataGrid): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid): | |
| 2012-03-30 Timothy Hatcher <timothy@apple.com> | |
| Prevent dragging and dropping everywhere except editable fields in the Web Inspector. | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added dragover event listener. | |
| (WebInspector._dragOver): Added. Prevent the drop from being accepted unless the target | |
| is an editable field. | |
| 2012-03-30 Timothy Hatcher <timothy@apple.com> | |
| Make revealing line numbers in the Web Inspector work again in all cases. | |
| This removes line number revealing from SourceCodeTextEditor and merges the extra logic that | |
| SourceCodeTextEditor had down into TextEditor. The problem was in WebInspector.TextEditor.shown, | |
| where _lineNumberToReveal was being deleted before SourceCodeTextEditor could use it. | |
| <rdar://problem/11148983> REGRESSION: Debugger does not scroll execution line into view when | |
| pausing in the debugger | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): Remove call to | |
| _revealPendingLineIfPossible. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.shown): Call _revealPendingLineIfPossible instead of revealLine. | |
| (WebInspector.TextEditor.prototype.revealLine): Delete _lineNumberToReveal now that the reveal | |
| is likely to happen. | |
| (WebInspector.TextEditor.prototype._revealPendingLineIfPossible): Added. | |
| (WebInspector.TextEditor.prototype._reset): Call _revealPendingLineIfPossible. | |
| 2012-03-29 Timothy Hatcher <timothy@apple.com> | |
| Switch to the new current log when reloading the page while viewing the current log. | |
| <rdar://problem/11145724> Reloading the page should switch to Current Log | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): Select the new Current Log | |
| if the current view is the previously active content view. | |
| 2012-03-29 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10657781> Remote Inspector: Improve Generic Searching for Node "Inspect Element Eyeglass" | |
| Match Open Source and add the two second highlight for inspected | |
| nodes. This is very useful for the Remote Inspector when using | |
| node searching. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector._domNodeWasInspected): | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for back and forward in the content browser. | |
| The shortcuts are Command-Control-Left and Command-Control-Right. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Create the KeyboardShortcuts and add the shortcut to the button tooltips. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for toggling the navigation and details sidebars. | |
| The shortcuts are Control-0 and Control-Shift-0. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create the KeyboardShortcuts. | |
| (WebInspector._leftSidebarToggleButtonToolTip): Include the keyboard shortcut. | |
| (WebInspector._rightSidebarToggleButtonToolTip): Ditto. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for the details sidebar panels. | |
| The shortcuts are Control-Shift-1, Control-Shift-2, etc. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel): Pass "4" as the keyboard shortcut key. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Pass "3" as the keyboard shortcut key. | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel): Pass the keyboard shortcut key through. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): Pass "2" as the keyboard shortcut key. | |
| * UserInterface/DetailsSidebarPanel.js: | |
| (WebInspector.DetailsSidebarPanel): Create a KeyboardShortcut and add it to the displayName. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Pass "1" as the keyboard shortcut key. | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel): Pass "5" as the keyboard shortcut key. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Add keyboard shortcuts for the navigation sidebar panels. | |
| The shortcuts are Control-1, Control-2, etc. We don't use Command to prevent conflicting with | |
| Safari's existing bookmarks bar commands. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Pass "7" as the keyboard shortcut key. | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): Pass "6" as the keyboard shortcut key. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Pass "3" as the keyboard shortcut key. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Pass "5" as the keyboard shortcut key. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Pass "8" as the keyboard shortcut key. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Create a KeyboardShortcut and add it to the displayName. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Pass "1" as the keyboard shortcut key. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Pass "4" as the keyboard shortcut key. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): Pass "2" as the keyboard shortcut key. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Make it easier to properly show a sidebar panel in the Web Inspector. | |
| This adds a show function to SidebarPanel that reveals the Sidebar if needed and selects | |
| the sidebar panel. For navigation sidebar panels it also focuses the TreeOutline. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.stopProfilingJavaScript): Use show(). | |
| * UserInterface/Main.js: | |
| (WebInspector._debuggerDidPause): Use show(). | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.show): Added. Call the superclass show and focus the tree. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._focusSearchField): Use show(). | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.addSidebarPanel): Use insertSidebarPanel. | |
| (WebInspector.Sidebar.prototype.insertSidebarPanel): Set the _parentSidebar to this. | |
| (WebInspector.Sidebar.prototype.removeSidebarPanel): Set the _parentSidebar to null. | |
| * UserInterface/SidebarPanel.js: | |
| (WebInspector.SidebarPanel.prototype.get parentSidebar): Added. | |
| (WebInspector.SidebarPanel.prototype.show): Added. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Add support to WebInspector.KeyboardShortcut for specifying a target element and callback. | |
| This adds support for Command-Shift-F to focus the search field as the first shortcut. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/KeyboardShortcut.js: | |
| (WebInspector.KeyboardShortcut): Added targetElement and callback parameters. Register a keydown listener. | |
| (WebInspector.KeyboardShortcut._handleKeyDown): Added. Walk the tree from the target and check for matching | |
| keyboard shortcuts. | |
| (WebInspector.KeyboardShortcut.prototype.get callback): Added. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Create a KeyboardShortcut for Command-Shift-F to focus the search field. | |
| (WebInspector.SearchSidebarPanel.prototype._focusSearchFiled): Added. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Reintroduce WebInspector.KeyboardShortcut as a proper class. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.startEditing.defaultFinishHandler): Use KeyboardShortcut.Key.Escape.keyCode instead of | |
| KeyboardShortcut.Keys.Esc.code. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): Remove the _shortcuts object and assign individual shortcuts. | |
| (WebInspector.JavaScriptLogViewController.prototype._promptKeyDown): Call matchesEvent on each shortcut. | |
| * UserInterface/KeyboardShortcut.js: Added. | |
| (WebInspector.KeyboardShortcut): | |
| (WebInspector.Key): | |
| (WebInspector.Key.prototype.get keyCode): | |
| (WebInspector.Key.prototype.get displayName): | |
| (WebInspector.Key.prototype.toString): | |
| (WebInspector.KeyboardShortcut.prototype.get modifiers): | |
| (WebInspector.KeyboardShortcut.prototype.get key): | |
| (WebInspector.KeyboardShortcut.prototype.get displayName): | |
| (WebInspector.KeyboardShortcut.prototype.matchesEvent): | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.editingNameValueKeyDown): Use KeyboardShortcut.Key | |
| instead of KeyboardShortcut.Keys. | |
| 2012-03-28 Timothy Hatcher <timothy@apple.com> | |
| Remove WebInspector.KeyboardShortcut, soon to be replaced by a better version. | |
| Part of: <rdar://problem/10947746> Add keyboard shortcuts for common actions in the new Web Inspector | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/KeyboardShortcut.js: Removed. | |
| 2012-03-26 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where Inspect Element would sometimes not stick and the DOM node selection would revert to | |
| the previous selected DOM node. | |
| <rdar://problem/11122326> Using the Inspect Element content menu sometimes fails to select the right DOM node | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable.selectNode): Return early if the DOM tree | |
| has a selection already. A selection can be made while waiting for the async reply. | |
| 2012-03-26 Timothy Hatcher <timothy@apple.com> | |
| Add some missing checks to the DOMNodeDetailsSidebarPanel. | |
| This prevents updating the interface if the DOM node selection changed while waiting for a response about | |
| the previous node from the backend. | |
| Reviewed by Ada Chan. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady): Return early if the | |
| DOM node does not match the current DOM node. The DOM node changed while we were waiting for the async response. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.fillSection): Ditto. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.eventListenersCallback): Ditto. | |
| 2012-03-25 Timothy Hatcher <timothy@apple.com> | |
| Use DetailsSectionPropertiesRow for the DOM node Properties section. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.css: Removed. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.fillSection): Create a | |
| DetailsSection and DetailsSectionPropertiesRow for each prototype. | |
| * UserInterface/DetailsSection.css: Set margin-bottom to -1px so nested section borders | |
| collapse into a single border. | |
| (.details-section): | |
| * UserInterface/Main.html: Removed DOMNodeDetailsSidebarPanel.css. | |
| 2012-03-24 Timothy Hatcher <timothy@apple.com> | |
| Make Select All only select the text content of the resource. | |
| To do this content element needs to either be in an iframe or editable. Working with frames is | |
| pretty annoying, so making the content editable was the best option. But since we don't support | |
| editing resources yet, we need to prevent the editing from occurring. | |
| <rdar://problem/11039596> REGRESSION (New Web Inspector): Select all while viewing source selects | |
| info in Details sidebar | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .content-container > .content): Added -webkit-user-modify: read-write-plaintext-only. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Added event listeners for keydown, textInput and webkitEditableContentChanged. | |
| (WebInspector.TextEditor.prototype._preventKeyDown): Added. Allow command keys and page up, page down, | |
| home, end, up, down, left, right. | |
| (WebInspector.TextEditor.prototype._preventTextInput): Added. Prevent paste and other input. | |
| (WebInspector.TextEditor.prototype._editableContentChanged): Added. Do a reset if this happens. | |
| 2012-03-24 Timothy Hatcher <timothy@apple.com> | |
| Remove WebInspector.isMac() and the dead code that came with it. | |
| Rubber-stamped by Dan Bernstein. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.startEditing.defaultFinishHandler): | |
| (WebInspector.setCurrentFocusElement): | |
| * UserInterface/KeyboardShortcut.js: | |
| (WebInspector.KeyboardShortcut._modifiersToString): | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPromptWithHistory.prototype.defaultKeyHandler): | |
| 2012-03-22 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector DataGrid sort indicator be HiDPI compliant. | |
| Part of: <rdar://problem/10643175> DataGrid sort indicator arrow and Timeline pills/callouts should be made HiDPI compliant | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid th.sort-ascending > div:first-child::after): Use the canvas based image. | |
| (.data-grid th.sort-descending > div:first-child::after): Ditto. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): Call _generateSortIndicatorImagesIfNeeded. | |
| (WebInspector.DataGrid.prototype._generateSortIndicatorImagesIfNeeded): Added. | |
| * UserInterface/Images/SortIndicatorDownArrow.pdf: Added. | |
| * UserInterface/Images/SortIndicatorUpArrow.pdf: Added. | |
| * UserInterface/Images/treeDownTriangleBlack.png: Removed. | |
| * UserInterface/Images/treeUpTriangleBlack.png: Removed. | |
| 2012-03-22 Timothy Hatcher <timothy@apple.com> | |
| Make the rest of the disclosure triangles in the Web Inspector HiDPI compliant. | |
| Part of: <rdar://problem/10643175> Some disclosure triangles and Timeline pills should be made HiDPI compliant | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/DisclosureTriangleTinyClosed.pdf: Added. | |
| * UserInterface/Images/DisclosureTriangleTinyOpen.pdf: Added. | |
| * UserInterface/Images/disclosureTriangleSmallDown.png: Removed. | |
| * UserInterface/Images/disclosureTriangleSmallRight.png: Removed. | |
| * UserInterface/Images/treeDownTriangleWhite.png: Removed. | |
| * UserInterface/Images/treeRightTriangleBlack.png: Removed. | |
| * UserInterface/Images/treeRightTriangleWhite.png: Removed. | |
| * UserInterface/ConsoleGroup.js: | |
| (WebInspector.ConsoleGroup): Delete bracket element. It was ugly and sooo Windows... | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Call _generateDisclosureTriangleImages. | |
| (WebInspector._generateDisclosureTriangleImages): Added. Generate images for small and tiny. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Use the canvas based disclosure triangles. | |
| * UserInterface/DOMTreeOutline.css: Ditto. | |
| * UserInterface/DataGrid.css: Ditto. | |
| * UserInterface/Section.css: Ditto. | |
| * UserInterface/LogContentView.css: Ditto. Also delete the bracket style rules. | |
| 2012-03-22 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10391969> Remote Inspector: Add CSS Completion for iOS Properties | |
| Add CSS auto-completion keywords for iOS properties. | |
| Add "touch" to the list of syntax highlighted value keywords. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/CSSKeywordCompletions.js: | |
| * UserInterface/CSSSourceTokenizer.js: | |
| (WebInspector.CSSSourceTokenizer): | |
| 2012-03-21 Timothy Hatcher <timothy@apple.com> | |
| Use -webkit-image-set instead of media queries in the Web Inspector. | |
| This patch also uses separate border-image-slice and border-image-source properties to | |
| avoid duplicate slice numbers in each rule. | |
| I didn't use image-set for the border-image cases since you still need a media query | |
| for the 2x slice numbers. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/ApplicationCacheIcons.css: | |
| (.application-cache-manifest .icon): Use -webkit-image-set. | |
| (.application-cache-frame .icon): Ditto. | |
| * UserInterface/CookieIcon.css: | |
| (.cookie-icon .icon): Use -webkit-image-set. | |
| * UserInterface/DOMStorageIcons.css: | |
| (.local-storage-icon .icon): Use -webkit-image-set. | |
| (.session-storage-icon .icon): Ditto. | |
| * UserInterface/DatabaseIcon.css: | |
| (.database-icon .icon): Use -webkit-image-set. | |
| * UserInterface/DatabaseTableIcon.css: | |
| (.database-table-icon .icon): Use -webkit-image-set. | |
| * UserInterface/FolderIcon.css: | |
| (.folder-icon .icon): Use -webkit-image-set. | |
| * UserInterface/InstrumentIcons.css: | |
| (.network-icon .icon): Use -webkit-image-set. | |
| (.colors-icon .icon): Ditto. | |
| (.script-icon .icon): Ditto. | |
| (.stopwatch-icon .icon): | |
| (.profile-icon .icon): Use -webkit-image-set. | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph): Use -webkit-image-set. | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph.recording): Ditto. | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph:hover): Ditto. | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph.recording:hover): Ditto. | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph.forced): Ditto. | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph.recording.forced): Ditto. | |
| * UserInterface/LogIcon.css: | |
| (.log-icon .icon): Use -webkit-image-set. | |
| * UserInterface/ResourceIcons.css: | |
| (.resource-icon .icon): Use -webkit-image-set. | |
| (.resource-icon.resource-type-document .icon): Ditto. | |
| (.resource-icon.resource-type-image .icon): Ditto. | |
| (.resource-icon.resource-type-font .icon): Ditto. | |
| (.resource-icon.resource-type-stylesheet .icon): Ditto. | |
| (.resource-icon.resource-type-script .icon): Ditto. | |
| (.anonymous-script-icon .icon): Ditto. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter > .line-number.breakpoint-resolved > .breakpoint): Use border-image-source. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview > .timeline .bar): Use border-image-slice. | |
| (.timeline-overview > .timeline.timeline-record-type-network .bar): Use border-image-source. | |
| (.timeline-overview > .timeline.timeline-record-type-layout .bar): Ditto. | |
| (.timeline-overview > .timeline.timeline-record-type-script .bar): Ditto. | |
| 2012-03-21 Timothy Hatcher <timothy@apple.com> | |
| Make the Web Inspector navigation bar and some disclosure triangles HiDPI aware again. | |
| This regressed when HiDPI canvas was turned off by <rdar://problem/10887881>. This change also uses | |
| media queries, so dragging the Web Inspector between different DPI monitors will correctly switch. | |
| <rdar://problem/11091555> HiDPI: Many small icons in new Web Inspector are blurry in HiDPI | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ActivateButtonNavigationItem.js: | |
| (WebInspector.ActivateButtonNavigationItem.prototype.generateStyleText): Added media query and 2x versions. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Added media query and 2x versions. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header::before): Set background-size. | |
| (.details-section > .header:not(.mouse-over-options-element):active::before): Added 2x version. | |
| (.details-section.collapsed > .header::before): Ditto. | |
| (.details-section.collapsed > .header:not(.mouse-over-options-element):active::before): Ditto. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): Added scale parameter. Multiply width and height by scale. | |
| (generateColoredImagesForCSS.imageLoaded): Call generateImage for each pixel ratio. | |
| (generateColoredImagesForCSS.generateImage): Added pixelRatio parameter. Multiply the shadow values by pixelRatio. | |
| Pass the pixelRation to generateColoredImage. | |
| (generateColoredImagesForCSS): Remove depth and scale. | |
| (generateEmbossedImages._imageLoaded): Call _createEmbossedCanvasImage for each pixel ratio. | |
| (generateEmbossedImages._createEmbossedCanvasImage): Added pixelRatio parameter. Define the depth. Multiply the | |
| width and height by pixelRatio. Use width and height instead of image.width and image.height through out. | |
| (generateEmbossedImages._invertMaskImage): Added width and height parameters. Use instead of image.width and image.height. | |
| (generateEmbossedImages._applyImageMask): Remove unused HTMLCanvasElement as input code path. | |
| * UserInterface/Main.css: | |
| (.go-to-arrow:active): Added 2x version. | |
| (:focus .selected .go-to-arrow): Added 2x version. | |
| (:focus .selected .go-to-arrow:active): Added 2x version. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .item .disclosure-button): Set background-size. | |
| (.navigation-sidebar-panel-content-tree-outline .item.selected .disclosure-button): Added 2x version. | |
| (.navigation-sidebar-panel-content-tree-outline .item.expanded .disclosure-button): Added 2x version. | |
| (.navigation-sidebar-panel-content-tree-outline .item.selected.expanded .disclosure-button): Added 2x version. | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): Added media query and 2x versions. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid th.collapser > .collapser-button): Set background-size. | |
| (.content-view.timelines > .data-grid th.collapser > .collapser-button:active): Added 2x version. | |
| (.content-view.timelines > .data-grid th.collapser.collapsed > .collapser-button): Added 2x version. | |
| (.content-view.timelines > .data-grid th.collapser.collapsed > .collapser-button:active): Added 2x version. | |
| 2012-03-20 Timothy Hatcher <timothy@apple.com> | |
| Don't allow setting breakpoints for resource types that are not Script or Document. | |
| <rdar://problem/11044410> Should not be allowed to set breakpoints on CSS resources | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): Don't add event listeners unless _supportsDebugging is true. | |
| (WebInspector.SourceCodeTextEditor.prototype.close): Remove event listeners inside if _supportsDebugging block. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): Don't add breakpoints unless _supportsDebugging. | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointStatus): Assert _supportsDebugging. | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointRemoved): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype._matchesBreakpoint): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.get _supportsDebugging): Added. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointInfo): Return early if !_supportsDebugging. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): Assert and return early if !_supportsDebugging. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointMoved): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointToggled): Ditto. | |
| 2012-03-20 Timothy Hatcher <timothy@apple.com> | |
| Add and remove the window-inactive style class so controls, row selections, and backgrounds use their inactive colors. | |
| <rdar://problem/11064364> Inspector controls (bars and buttons) have active appearance in inactive windows | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (body.window-inactive .navigation-bar > .item.button:not(.suppress-emboss) > .glyph): | |
| (.navigation-bar > .item.button.disabled > .glyph): | |
| (body.window-inactive .navigation-bar > .item.button.disabled:not(.suppress-emboss) > .glyph): | |
| (.navigation-bar > .item.button.suppress-emboss > .glyph): | |
| (.navigation-bar > .item.button.suppress-emboss:active > .glyph): | |
| (.navigation-bar > .item.button.suppress-emboss.disabled > .glyph): Moved from QuickConsole.css. | |
| * UserInterface/DataGrid.css: | |
| (body.window-inactive .data-grid th.sort-descending): Fixed the selector to use window-inactive. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added window event listeners for blur and focus. | |
| (WebInspector.updateDockedState): Remove the window-inactive class when docking, just in case. | |
| (WebInspector._windowFocused): Added. | |
| (WebInspector._windowBlurred): Added. | |
| * UserInterface/QuickConsole.css: Moved the disabled button style to ButtonNavigationItem.css. | |
| 2012-03-19 Timothy Hatcher <timothy@apple.com> | |
| Support showing and working with Script breakpoints from the Breakpoint sidebar. | |
| Part of: <rdar://problem/11075565> REGRESSION (New Web Inspector): Injected extension content scripts are not shown | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Refactor code to work in terms on both Resource and Script. | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpointsForSourceCode): Renamed from _addBreakpointsForResource. | |
| (WebInspector.BreakpointSidebarPanel.prototype._resourceAdded): Use _addBreakpointsForSourceCode. | |
| (WebInspector.BreakpointSidebarPanel.prototype._mainResourceChanged): Ditto. | |
| (WebInspector.BreakpointSidebarPanel.prototype._scriptAdded): Added. Call _addBreakpointsForSourceCode if this script isn't | |
| backed by a Resource. | |
| (WebInspector.BreakpointSidebarPanel.prototype._scriptsCleared): Added. Remove all ScriptTreeElements. | |
| (WebInspector.BreakpointSidebarPanel.prototype._treeElementSelected): Refactored to work with either Resource or Script. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.scriptForIdentifier): Added. | |
| (WebInspector.DebuggerManager.prototype.scriptsForURL): Added. | |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): Set the breakpoint correctly for Script's without URLs. | |
| 2012-03-19 Timothy Hatcher <timothy@apple.com> | |
| Show Scripts in the Resource sidebar at the top level. | |
| These scripts are grouped into 3 folders: Extension Scripts, Extra Scripts and Anonymous Scripts. | |
| <rdar://problem/11075565> REGRESSION (New Web Inspector): Injected extension content scripts are not shown | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.reset): Fire ScriptsCleared event. | |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): Fire ScriptAdded event. Pass isContentScript | |
| to the Script constructor. | |
| * UserInterface/Images/ClippingJS.png: Added. | |
| * UserInterface/Images/ClippingJS@2x.png: Added. | |
| * UserInterface/Main.html: Included ScriptTreeElement.js. | |
| * UserInterface/ResourceIcons.css: | |
| (.anonymous-script-icon .icon): Added. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Added event listeners for ScriptAdded and ScriptsCleared. | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): Create a tree element for | |
| the anonymous script. | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded): Create a tree element for scripts with URLs. | |
| (WebInspector.ResourceSidebarPanel.prototype._scriptsCleared): Remove the script folders. | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Support ScriptTreeElement. | |
| * UserInterface/Script.js: | |
| (WebInspector.Script): Added injected parameter. | |
| (WebInspector.Script.prototype.get injected): Added. | |
| * UserInterface/ScriptTreeElement.js: Added. | |
| (WebInspector.ScriptTreeElement): | |
| (WebInspector.ScriptTreeElement.prototype.get script): | |
| 2012-03-19 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ScriptContentView for showing content of Script objects. | |
| Part of: <rdar://problem/11047982> REGRESSION (New Web Inspector): Page source does not show when a | |
| breakpoint is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Added case for Script. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel.prototype._treeElementSelected): Simplify and use ResourceSidebarPanel.showSourceCode. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.sidebarPanelForRepresentedObject): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): Update assert for ScriptContentView. | |
| (WebInspector.ResourceSidebarPanel.prototype.showContentViewForCookie): Move a variable down below an early return. | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): Updated to work with Scripts. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Close all ScriptContentViews. | |
| * UserInterface/ScriptContentView.css: Added. | |
| (.content-view.script > .text-editor): | |
| * UserInterface/ScriptContentView.js: Added. Copied mostly from TextResourceContentView. | |
| (WebInspector.ScriptContentView): | |
| (WebInspector.ScriptContentView.prototype.get script): | |
| (WebInspector.ScriptContentView.prototype.get textEditor): | |
| (WebInspector.ScriptContentView.prototype.get supplementalRepresentedObjects): | |
| (WebInspector.ScriptContentView.prototype.revealLine): | |
| (WebInspector.ScriptContentView.prototype.shown): | |
| (WebInspector.ScriptContentView.prototype.hidden): | |
| (WebInspector.ScriptContentView.prototype.closed): | |
| (WebInspector.ScriptContentView.prototype._contentWillPopulate): | |
| (WebInspector.ScriptContentView.prototype._executionLineNumberDidChange): | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Hide line numbers for blank lines when showing inline scripts while the debugger is paused. | |
| When paused in the debugger we sometimes can only show the scripts for the HTML file. When | |
| this happens the scripts are the only thing visible (in their final position) with blank | |
| lines for the earlier HTML content. This hides the line numbers for those blank lines | |
| to provide a clue to the user that they shouldn't expect content there. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): Start with the first line as invalid, before a populate there | |
| is always a blank first line. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentAvailable): Clear the invalid line numbers. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable): | |
| Add blank lines to the invalid line numbers map. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorShouldHideLineNumber): Added. Check the invalid | |
| line numbers map. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.updateLayout): Added force parameter and pass it to _updateLineNumbers. | |
| (WebInspector.TextEditor.prototype._reset): Pass true to updateLayout. | |
| (WebInspector.TextEditor.prototype._updateLineNumbers): Added force parameter. Always rebuild the line numbers | |
| when this is true. | |
| (WebInspector.TextEditor.prototype._lineNumberTextContent): Added. Helper. | |
| (WebInspector.TextEditor.prototype._addBreakpointElementToLineElementWithInfo): Use _lineNumberTextContent. | |
| (WebInspector.TextEditor.prototype._removePossibleBreakpointElementFromLineElement): Ditto. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Remove duplicate copies of _checkForOldResources and put it in the NavigationSidebarPanel base class. | |
| Now that the individual _checkForOldResources functions don't access different URL maps, this code | |
| can now be shared down in NavigationSidebarPanel. | |
| Reviewed by John Sullivan. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Removed event listeners for _checkForOldResources. | |
| (WebInspector.BreakpointSidebarPanel.prototype._mainResourceChanged): Remove call to _checkForOldResources. | |
| (WebInspector.BreakpointSidebarPanel.prototype._checkForOldResources): Removed. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Removed event listeners for _checkForOldResources. | |
| (WebInspector.IssueSidebarPanel.prototype._checkForOldResources): Removed. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Added event listeners for _checkForOldResources. | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForOldResources.delayedWork): Added. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Removed event listeners for _checkForOldResources. | |
| (WebInspector.SearchSidebarPanel.prototype._checkForOldResources): Removed. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Simplify IssueSidebarPanel and SearchSidebarPanel by using TreeOutline.getCachedTreeElement to | |
| find existing ResourceTreeElements. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Removed _issueRootElements. | |
| (WebInspector.IssueSidebarPanel.prototype._issueWasAdded): Use getCachedTreeElement to find | |
| the existing ResourceTreeElement. | |
| (WebInspector.IssueSidebarPanel.prototype._issuesCleared): Removed _issueRootElements reference. | |
| (WebInspector.IssueSidebarPanel.prototype._checkForOldResources.delayedWork): Ditto. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Removed _resourceSearchResultMap. | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementForResource): Removed _resourceSearchResultMap | |
| reference. Use getCachedTreeElement to find the existing ResourceTreeElement. | |
| (WebInspector.SearchSidebarPanel.prototype._checkForOldResources.delayedWork): | |
| Removed _resourceSearchResultMap reference. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Simplify BreakpointSidebarPanel by using TreeOutline.getCachedTreeElement to find existing | |
| the BreakpointTreeElements and ResourceTreeElements. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Removed _resourceTreeElementURLMap. | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Use getCachedTreeElement to | |
| find the existing ResourceTreeElement. | |
| (WebInspector.BreakpointSidebarPanel.prototype._breakpointRemoved): Use getCachedTreeElement to | |
| find the BreakpointTreeElement to remove. | |
| (WebInspector.BreakpointSidebarPanel.prototype._checkForOldResources.delayedWork): Removed | |
| _resourceTreeElementURLMap reference. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Fix some exceptions I hit while adding ScriptContentView. | |
| Add some null checks at the callers of sidebarPanelForRepresentedObject, since sidebarPanelForRepresentedObject | |
| can return null when the representedObject is unknown. The sidebarPanelForRepresentedObject function logs an | |
| error to the console when it returns null. So the exceptions were just more noise. | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Null check the result of sidebarPanelForRepresentedObject. | |
| (WebInspector._updateCurrentContentViewCookie): Ditto. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where the execution line was not highlighted for single line scripts. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._reset): Add ExecutionLineStyleClassName to the text chunk element | |
| if the chunk is one line and it is the execution line. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Rename ResourceSidebarPanel.showResourceSourceCode to ResourceSidebarPanel.showSourceCode. | |
| This is prep for making ResourceSidebarPanel be responsible for showing Scripts. | |
| Part of: <rdar://problem/11047982> REGRESSION (New Web Inspector): Page source does not show when a | |
| breakpoint is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/DebugSidebarPanel.js: | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel.prototype._treeElementSelected): | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCode): Renamed from showResourceSourceCode. Changed | |
| to not assume we are dealing with a Resource. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._goToResource): | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| (WebInspector.ScriptTimelineDataGridNode.prototype._goToResource): | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementSelected): | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Prevent double dividers in the navigation bar when viewing a non-frame content view. | |
| The node search navigation item is hidden when not on a frame content view, but that causes | |
| the adjacent dividers to come together. We need to hide one divider in this case. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Remember the divider to the left of the node search item. | |
| (WebInspector._currentContentViewDidChange): Hide the divider too. | |
| 2012-03-18 Timothy Hatcher <timothy@apple.com> | |
| Show script content when the debugger pauses on a resource that hasn't populated its full content yet. | |
| Part of: <rdar://problem/11047982> REGRESSION (New Web Inspector): Page source does not show when a | |
| breakpoint is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.scriptsForResource): Added. | |
| (WebInspector.DebuggerManager.prototype.reset): Clear _scriptURLMap. | |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): Don't add the script again if it is already known. | |
| Add scripts with URLs to _scriptURLMap. | |
| * UserInterface/SourceCodeTextEditor.js: | |
| (WebInspector.SourceCodeTextEditor): Call _activeCallFrameDidChange to update the execution line and request | |
| script content if needed. | |
| (WebInspector.SourceCodeTextEditor.prototype.revealLine): Store the line number if we don't have the line needed | |
| to show yet. Delete the stored values if we call through to TextEditor. | |
| (WebInspector.SourceCodeTextEditor.prototype._revealPendingLineIfPossible): Don't delete the stored values here. | |
| Return early if we don't have the line needed. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentWillPopulate): Added. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentDidPopulate): Added. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithContent): Added. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentAvailable): Set _fullContentPopulated and call _populateWithContent. | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): Call _populateWithInlineScriptContent or | |
| _populateWithScriptContent for Resource source code. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent): Added. Request the content for all | |
| the scripts for this URL. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithInlineScriptContent.scriptContentAvailable): Concat the scripts | |
| together, adding the script tags. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent): Added. Request the single script content. | |
| (WebInspector.SourceCodeTextEditor.prototype._populateWithScriptContent.scriptContentAvailable): Set _fullContentPopulated | |
| and call _populateWithContent. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Listen for the ContentWillPopulate event. | |
| (WebInspector.TextResourceContentView.prototype._contentWillPopulate): Renamed from contentAvailable. Do nothing if the text | |
| editor is already added. | |
| 2012-03-16 Timothy Hatcher <timothy@apple.com> | |
| Factor most of TextResourceContentView out into SourceCodeTextEditor, a new TextEditor subclass. | |
| This is prep work for making a ScriptContentView to show Scripts before the resource loads. | |
| Part of: <rdar://problem/11047982> REGRESSION (New Web Inspector): Page source does not | |
| show when a breakpoint is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/IssueManager.js: | |
| (WebInspector.IssueManager.prototype.issuesForSourceCode): Renamed from issuesForResource. | |
| * UserInterface/Main.html: Included SourceCodeTextEditor.js and SourceCodeTextEditor.css. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Use issuesForSourceCode. | |
| * UserInterface/SourceCodeTextEditor.css: Copied from TextResourceContentView.css. | |
| (.source-code.text-editor .text-editor-text-chunk.error): | |
| (.source-code.text-editor .text-editor-text-chunk.warning): | |
| * UserInterface/SourceCodeTextEditor.js: Added. | |
| (WebInspector.SourceCodeTextEditor): | |
| (WebInspector.SourceCodeTextEditor.prototype.get sourceCode): | |
| (WebInspector.SourceCodeTextEditor.prototype.revealLine): Copied from TextResourceContentView. | |
| (WebInspector.SourceCodeTextEditor.prototype.shown): Call _revealPendingLineIfPossible. | |
| (WebInspector.SourceCodeTextEditor.prototype.close): Remove event listeners. | |
| (WebInspector.SourceCodeTextEditor.prototype._revealPendingLineIfPossible): Helper. | |
| (WebInspector.SourceCodeTextEditor.prototype._contentAvailable): Copied from TextResourceContentView. | |
| (WebInspector.SourceCodeTextEditor.prototype._updateBreakpointStatus): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointRemoved): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype._activeCallFrameDidChange): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype._matchesScriptLocation): Helper. | |
| (WebInspector.SourceCodeTextEditor.prototype._matchesBreakpoint): Helper. | |
| (WebInspector.SourceCodeTextEditor.prototype._matchesIssue): Helper. | |
| (WebInspector.SourceCodeTextEditor.prototype._issueWasAdded): Copied from TextResourceContentView. | |
| (WebInspector.SourceCodeTextEditor.prototype._addIssueToLineNumberMap): Helper. | |
| (WebInspector.SourceCodeTextEditor.prototype._addIssueToLine): Copied from TextResourceContentView. | |
| (WebInspector.SourceCodeTextEditor.prototype._breakpointInfoForBreakpoint): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBaseURL): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorLineContentUpdated): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointInfo): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointAdded): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointRemoved): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointMoved): Ditto. | |
| (WebInspector.SourceCodeTextEditor.prototype.textEditorBreakpointToggled): Ditto. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Call the Object constructor. | |
| (WebInspector.TextEditor.prototype.set executionLineNumber): Fire the ExecutionLineNumberDidChange event. | |
| * UserInterface/TextResourceContentView.css: | |
| (.text-editor .text-editor-text-chunk.error): Removed. | |
| (.text-editor .text-editor-text-chunk.warning): Removed. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Listen for the ExecutionLineNumberDidChange event. | |
| (WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects): If the SourceCodeTextEditor | |
| has an executionLineNumber, we can assume it is always the active call frame. | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Just remove the spinner or error message | |
| and append the text editor. | |
| (WebInspector.TextResourceContentView.prototype.revealLine): Just call revealLine on the text editor. | |
| (WebInspector.TextResourceContentView.prototype.closed): Call close on the text editor. | |
| (WebInspector.TextResourceContentView.prototype._executionLineNumberDidChange): Added. | |
| 2012-03-15 Timothy Hatcher <timothy@apple.com> | |
| Allow breakpoints to be set for a Resource or a Script. | |
| This is prep for making a TextEditor subclass that works with either a Script or a Resource. | |
| Part of: <rdar://problem/11047982> REGRESSION (New Web Inspector): Page source does not | |
| show when a breakpoint is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): Make the constructor take a SourceCode object instead of a URL. | |
| (WebInspector.Breakpoint.prototype.get scriptIdentifier): Added. | |
| (WebInspector.Breakpoint.prototype.get info): Updated the comment. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpointsForResource): Use breakpointsForSourceCode. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.breakpointsForSourceCode): Renamed from breakpointsForURL. Takes | |
| a SourceCode object and looks up by url or id. | |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): Don't assume there is a url. Adds the breakpoint | |
| to the URL map and/or the script identifier map. | |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): Ditto for removal. | |
| (WebInspector.DebuggerManager.prototype._saveBreakpoints): Skips breakpoints without URLs. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Use breakpointsForSourceCode. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointAdded): Pass the resource to the | |
| Breakpoint constructor instead of the URL. | |
| 2012-03-17 Timothy Hatcher <timothy@apple.com> | |
| Use Date.toLocaleString() to format the date in the Exprires column of the Cookies view. | |
| <rdar://problem/9628659> Expires date in the Cookies view should be localized | |
| Reviewed by Ada Chan. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype._rebuildTable): Use toLocaleString(). | |
| 2012-03-16 Joseph Pecoraro <pecoraro@apple.com> | |
| Give each Timeline DataGrid a chance to react to EventMarkers. | |
| If another timeline data grid was active when event markers arrived, | |
| then switching to the Network data grid was not showing those event | |
| markers. Give each Timeline data grid a chance to react to the | |
| event marker, not just the active data grid. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._recordingStarted): | |
| (WebInspector.TimelinesContentView.prototype._recordedEventMarker): | |
| (WebInspector.TimelinesContentView.prototype._updateCalculatorBoundsForPendingRecordsAndEventMarkers): | |
| 2012-03-16 Joseph Pecoraro <pecoraro@apple.com> | |
| Workaround sporatic double thick border appearing in collapsed columns. | |
| Occasionally the Networks data grid will show a double thick border where | |
| the collapsed, 0-width, columns were. Workaround this by just hiding the | |
| border for collapsed columns. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid.collapsed-details td.column-group-details:not(:last-child)): | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype.didToggleColumnGroup): | |
| 2012-03-15 Timothy Hatcher <timothy@apple.com> | |
| Make the Quick Console toolbar buttons pin to the bottom when doing multi-line input. | |
| Also make the scrollbars not interfere if the user has old-school scrollbars. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): Specify overflow-x and overflow-y separately. Use auto instead of scroll. | |
| (.quick-console > .view-container): Use auto instead of scroll. | |
| (.quick-console > .toolbar > .navigation-bar-container): Added. | |
| (.quick-console > .toolbar > .navigation-bar-container > .navigation-bar-spacer): Added. | |
| (.quick-console > .toolbar > .navigation-bar-container > .navigation-bar): Updated the selector. | |
| (.quick-console > .toolbar > .navigation-bar-container > .navigation-bar > .item.button.disabled > .glyph): Ditto. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Create navigation bar container and spacer. | |
| 2012-03-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11049672> Delete key should delete selected breakpoint in sidebar | |
| - Delete key removes the breakpoint. | |
| - Enter / Space toggles the breakpoint. | |
| - All Exceptions and Uncaught Exceptions breakpoints cannot be removed | |
| and will beep if the user attempts to delete them. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline.prototype._treeKeyDown): | |
| Expose onspace like onenter and ondelete. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement.prototype.ondelete): | |
| (WebInspector.BreakpointTreeElement.prototype.onenter): | |
| (WebInspector.BreakpointTreeElement.prototype.onspace): | |
| Implement default TreeElement handlers for keys. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): | |
| (WebInspector.DebuggerManager.prototype.isBreakpointRemovable): | |
| Ensure we never try to remove the custom breakpoints. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): | |
| (WebInspector.TextResourceContentView.prototype._breakpointRemoved): | |
| When a breakpoint is removed update the ContentView and TextEditor. | |
| 2012-03-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11050670> REGRESSION (New Web Inspector): Add Inspect Element button (magnifying glass button) | |
| Only show the button when a FrameView (DOM Tree / Source Code) is available. | |
| When switching away from a FrameView make sure to disable node searching | |
| if it was active. Also since the nav bar may have changed size have the | |
| content browser update its navigation bar layout. | |
| If this happens more in the future the buttons should be owned by the | |
| individual ContentViews instead of WebInspector. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._currentContentViewDidChange): | |
| 2012-03-15 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11050670> REGRESSION (New Web Inspector): Add Inspect Element button (magnifying glass button) | |
| Add an on/off button for node searching. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ActivateButtonNavigationItem.js: Added. | |
| (WebInspector.ActivateButtonNavigationItem): | |
| (WebInspector.ActivateButtonNavigationItem.prototype.get activated): | |
| (WebInspector.ActivateButtonNavigationItem.prototype.set activated): | |
| (WebInspector.ActivateButtonNavigationItem.prototype.generateStyleText): | |
| ActivateButton uses the normal "Focus" style when "Activated". It | |
| then includes a darker version of "Focus" for "Activated:active". | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages): | |
| Allow for more flexible subclassing. | |
| * UserInterface/ImageUtilities.js: | |
| (generateEmbossedImages._imageLoaded): | |
| (generateEmbossedImages._createEmbossedCanvasImage): | |
| Create a FocusDark style if requested. | |
| * UserInterface/Images/Hand.pdf: Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._domNodeWasInspected): | |
| (WebInspector._toggleNodeSearch.callback): | |
| (WebInspector._toggleNodeSearch): | |
| Add the button to the right. | |
| 2012-03-14 Timothy Hatcher <timothy@apple.com> | |
| Fix typo of the servicePendingContentRequests function was mentioned in review but I forgot to save the file. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.markAsFailed): Fix typo of servicePendingContentRequests. | |
| 2012-03-14 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10935394> REGRESSION (New Web Inspector): load and DOMContentLoaded event lines are not shown in the Timeline overview | |
| <rdar://problem/10935417> REGRESSION (New Web Inspector): developer generated timestamps are not shown in the Timeline overview | |
| Add event marker decorations to the TimelineOverview. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations > .event-markers > .event-marker.timestamp): | |
| Make markTimeline/timeStamp green instead of yellow. Easier to see. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.clear): | |
| Clearing should also remove visible EventMarkers. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview .timeline-decorations > .event-markers): | |
| (.timeline-overview .timeline-decorations > .event-markers > .event-marker-tooltip): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._recordedEventMarker): | |
| Pass event markers on to the TimelineOverview. | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview.prototype.update): | |
| (WebInspector.TimelineOverview.prototype.addTimelineEventMarker): | |
| Have the decorator draw event markers. | |
| 2012-03-14 Timothy Hatcher <timothy@apple.com> | |
| Provide a way to request content from a Script. | |
| Factor out the content requesting parts of Resource down into a SourceCode class that | |
| both Resource and Script now inherit from. | |
| Part of: <rdar://problem/11047982> REGRESSION: Page source does not show when a breakpoint | |
| is hit while loading the page | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.html: Included SourceCode.js. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): | |
| (WebInspector.Resource.prototype.canRequestContentFromBackend): Added. | |
| (WebInspector.Resource.prototype.requestContentFromBackend): Added. | |
| (WebInspector.Resource.prototype.markAsFinished): Call requestContentFromBackendIfNeeded. | |
| (WebInspector.Resource.prototype.markAsFailed): Call servicePendingContentRequests with force. | |
| * UserInterface/Script.js: | |
| (WebInspector.Script): | |
| (WebInspector.Script.prototype.canRequestContentFromBackend): Added. | |
| (WebInspector.Script.prototype.requestContentFromBackend): Added. | |
| * UserInterface/SourceCode.js: Added. | |
| (WebInspector.SourceCode): | |
| (WebInspector.SourceCode.prototype.get content): | |
| (WebInspector.SourceCode.prototype.get contentIsBase64Encoded): | |
| (WebInspector.SourceCode.prototype.get contentURL): | |
| (WebInspector.SourceCode.prototype.requestContent): | |
| (WebInspector.SourceCode.prototype.canRequestContentFromBackend): | |
| (WebInspector.SourceCode.prototype.requestContentFromBackend): | |
| (WebInspector.SourceCode.prototype.requestContentFromBackendIfNeeded): | |
| (WebInspector.SourceCode.prototype.servicePendingContentRequests): | |
| (WebInspector.SourceCode.prototype._processContent): | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11044135> Quick Console should handle multiline input better | |
| The QuickConsole consists of two pieces in a fixed height. The toolbar with | |
| JavaScript prompt, and the output content view container. The console itself | |
| grows to a maximum size (75% of the total window size or user specified by | |
| resizing). When handling multiline input the toolbar containing the prompt | |
| is allowed to grow, pushing up the content. When the maximum is reached the | |
| content will scroll under it, and likewise the multiline JavaScript prompt | |
| will eventually scroll under it. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype._promptKeyDown): | |
| (WebInspector.JavaScriptLogViewController.prototype._promptHistoryChange): | |
| (WebInspector.JavaScriptLogViewController.prototype._promptPasteboardEvent): | |
| (WebInspector.JavaScriptLogViewController.prototype._detectPromptHeightChanges.afterEvent): | |
| (WebInspector.JavaScriptLogViewController.prototype._detectPromptHeightChanges): | |
| * UserInterface/TextPrompt.js: | |
| (WebInspector.TextPrompt): | |
| (WebInspector.TextPromptWithHistory.prototype.defaultKeyHandler): | |
| In order to detect with the input prompt changes height, we hook into | |
| a number of events. Keydown, cut/paste, and TextPrompt history changes. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): | |
| (.quick-console.collapsed): | |
| Let the console scroll when multiline input fills the entire console. | |
| To allow multiline input when collapsed remove !important from height. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.set collapsed): | |
| (WebInspector.QuickConsole.prototype.get multiline): | |
| (WebInspector.QuickConsole.prototype.get collapsedHeight): | |
| Use constants where possible for height values. | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): | |
| (WebInspector.QuickConsole.prototype.promptDidChangeHeight): | |
| Responds to actions that will most like require resizes. | |
| (WebInspector.QuickConsole.prototype._updateToolbarSize): | |
| Update the toolbar size if the prompt size changed. | |
| (WebInspector.QuickConsole.prototype._updateViewContainerSizeAndScrollDivider): | |
| Update the view container's size when single line or multiline. | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Tweak quick console focusing. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._viewContainerClick.afterDispatches): | |
| This didn't appear to work for all actions. Ignore the caret checking, | |
| and more proactively focus as long as there is no selection. | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Minor quick console mouse improvements. | |
| Allow selection in the messages output. | |
| Clicking in the messages output focuses the prompt if there is no | |
| selection. This matches LogContentView. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .view-container): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype._viewContainerClick.afterDispatches): | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Event marker lines should not overlap the quick console. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations > .event-markers): | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Renamed isFocused() to a focused getter based on earlier review feedback. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt.prototype.get focused): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.consoleCleared): | |
| * UserInterface/Main.js: | |
| (WebInspector._keydown): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): | |
| 2012-03-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Converge to a single RecordedEventMarker event based on earlier review feedback. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager): | |
| (WebInspector.TimelineManager.prototype.startRecording): | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| 2012-03-13 Timothy Hatcher <timothy@apple.com> | |
| Make profiles work again while retaining the correct insertion order in the Timeline DataGrids. | |
| This reverts most of r41172 and fixes the single issue from the open source version of the code. | |
| When there isn't a previousGridNode that means we need to insert at the top of the DataGrid. | |
| But the open source code was missing the !previousGridNode check, causing elements to append | |
| at the end instead. | |
| <rdar://problem/10960578> REGRESSION (r41172): DOM exceptions when showing profile data grid | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype._attach): Revert r41172 and add a check for !previousGridNode. | |
| 2012-03-13 Timothy Hatcher <timothy@apple.com> | |
| Don't follow links when they are being edited by the user. | |
| Inspired by the fix for https://webkit.org/b/60814. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked): Call isBeingEdited and return early if true. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.isBeingEdited): Check ancestor elements too. | |
| * UserInterface/Main.js: | |
| (WebInspector.handlePossibleLinkClick): Call isBeingEdited and return early if true. | |
| 2012-03-13 Timothy Hatcher <timothy@apple.com> | |
| Remove duplicate code for the handling clicked links. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): Removed click event listener. | |
| (WebInspector.CSSSelectorProfileView.prototype._mouseWasClicked): Removed. | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel.prototype._mouseWasClicked): Use handlePossibleLinkClick. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked.followLink): Pass along the lineNumber. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): Removed click event listener. | |
| (WebInspector.JavaScriptProfileView.prototype._mouseWasClicked): Removed. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Removed click event listener. | |
| (WebInspector.LogContentView.prototype._messagesClicked): Removed. | |
| * UserInterface/Main.js: | |
| (WebInspector.handlePossibleLinkClick): Added. | |
| (WebInspector._mouseWasClicked): Call handlePossibleLinkClick. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Removed click event listener. | |
| (WebInspector.QuickConsole.prototype._messagesClicked): Removed. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView.prototype._mouseWasClicked): Use handlePossibleLinkClick. | |
| 2012-03-13 Timothy Hatcher <timothy@apple.com> | |
| Properly bind and unbind every DOMNode to DOMTreeManager. | |
| Merges the fix for https://webkit.org/b/78116 from open source (r107093). | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): Inserts the node into the DOMTreeManager map here. So all | |
| the callers don't need to do it. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._setDocument): Removed binding code. | |
| (WebInspector.DOMTreeManager.prototype._setDetachedRoot): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._setChildNodes): Removed call to _bindNodes. | |
| (WebInspector.DOMTreeManager.prototype._bindNodes): Removed. | |
| (WebInspector.DOMTreeManager.prototype._childNodeRemoved): Call _unbind. | |
| (WebInspector.DOMTreeManager.prototype._unbind): Added. Recursively unbind. | |
| 2012-03-13 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where removing a TreeElement from a TreeOutline would cause the TreeOutline | |
| to forget all TreeElements that came after the TreeElement that was removed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline.prototype._forgetChildrenRecursive): Pass parentElement instead of this to | |
| traverseNextTreeElement, forcing it to stop when it reaches the last descendant of parentElement. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Keep the QuickConsole scroll position pinned to the bottom when changing the height. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype.updateLayout): Scroll to the bottom if we were before the possible height change. | |
| (WebInspector.QuickConsole.prototype._isScrolledToBottom): Added. | |
| (WebInspector.QuickConsole.prototype._scrollToBottom): Added. | |
| (WebInspector.QuickConsole.prototype._resizerMouseDown): Remember if the view was scrolled to the bottom before resize. | |
| (WebInspector.QuickConsole.prototype._resizerMouseMoved): Scroll to the bottom if we were before resize. | |
| (WebInspector.QuickConsole.prototype._resizerMouseUp): Delete the flag. | |
| (WebInspector.QuickConsole.prototype._viewContainerClick.afterDispatches): Scroll the console element into view that | |
| was clicked or scroll to the bottom if we were before. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Allow the QuickConsole to shrink in height when it auto grew in height. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype.set collapsed): Reset _userPreferredMaximumHeightWasSetSinceLastToggle back to false. | |
| (WebInspector.QuickConsole.prototype.set userPreferredMaximumHeight): Set _userPreferredMaximumHeightWasSetSinceLastToggle to true. | |
| (WebInspector.QuickConsole.prototype._updateViewContainerSizeAndScrollDivider): Return early if _userPreferredMaximumHeightWasSetSinceLastToggle | |
| is set after calling _updateScrollDivider. Added an allowShrinking parameter. | |
| (WebInspector.QuickConsole.prototype._viewContainerClick): Update comment. And call _updateViewContainerSizeAndScrollDivider, | |
| passing true to allow shrinking. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Quick fixes to the QuickConsole styles. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): Set overflow to hidden so the toolbar box-shadow does not spill out the sides. Also | |
| removes a box-shadow that was not doing anything useful. | |
| (.quick-console > .view-container): Set overflow-x to hidden so the horizontal scrollbar never shows. | |
| (.quick-console > .toolbar): Set a transition on box-shadow so the shadow animates. Add a base box-shadow | |
| that has 0 for blur so it animates nicely. | |
| (.quick-console > .toolbar.scroll-divider): Tweak the shadow so it is rgba() and a larger blur. | |
| 2012-03-12 Joseph Pecoraro <pecoraro@apple.com> | |
| Disable the Toggle button when there is no Quick Console content. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector._keydown): | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .toolbar > .navigation-bar > .item.button.disabled > .glyph): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.toggle): | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): | |
| (WebInspector.QuickConsole.prototype._toggleButtonClicked): | |
| (WebInspector.QuickConsole.prototype._resizerDoubleClicked): | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): | |
| 2012-03-12 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11034808> Esc should focus or toggle the QuickConsole | |
| Esc will focus the quick console if nothing else is focused and accepting | |
| input. When focused, Esc will toggle the console's drawer. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector._keydown): | |
| Handle the Esc key. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole.prototype._toggleButtonClicked): | |
| When the quick console is focused and a user clicks the toggle button, | |
| the quick console emits a "blur" event even though the caret is still | |
| inside it and commands can be run. This breaks the "isFocused()" state | |
| of the field and thus the Esc key toggling the field. So, lets just | |
| auto-focus the TextPrompt when the toggle button is clicked. | |
| 2012-03-12 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11034699> Quick Console should respect clear keyboard shortcuts | |
| React to the clear active log event but only on the currently active console. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt): | |
| (WebInspector.JavaScriptTextPrompt.prototype.isFocused): | |
| (WebInspector.JavaScriptTextPrompt.prototype._focusedPrompt): | |
| (WebInspector.JavaScriptTextPrompt.prototype._blurredPrompt): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.consoleCleared): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype._activeLogCleared): | |
| 2012-03-12 Joseph Pecoraro <pecoraro@apple.com> | |
| Improve QuickConsole content sizing. | |
| Make the quick console work like a calculator. The most recent | |
| result is closest to the console prompt. Older results scroll | |
| up off the top. Now when resizing, the user is setting their | |
| preferred maximum size of the drawer. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.set collapsed): | |
| (WebInspector.QuickConsole.prototype.get collapsedHeight): | |
| (WebInspector.QuickConsole.prototype.get minimumUncollapsedHeight): | |
| (WebInspector.QuickConsole.prototype.get maximumUncollapsedHeight): | |
| Give comments describing the boundary heights. | |
| (WebInspector.QuickConsole.prototype.get userPreferredMaximumHeight): | |
| (WebInspector.QuickConsole.prototype.set userPreferredMaximumHeight): | |
| Add a convenient function for getting the user preferred sizes. | |
| (WebInspector.QuickConsole.prototype.set height): | |
| (WebInspector.QuickConsole.prototype._expandViewContainerSize): | |
| (WebInspector.QuickConsole.prototype._updateViewContainerSizeAndScrollDivider): | |
| (WebInspector.QuickConsole.prototype._updateScrollDivider): | |
| When setting the height, we typically drop through to updating the | |
| container size to get the size to fit, and update the scroll divider | |
| if needed. | |
| (WebInspector.QuickConsole.prototype._resizerMouseMoved): | |
| When the user resized, save the height into Settings. | |
| (WebInspector.QuickConsole.prototype.updateLayout): | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): | |
| Times when we need to adjust sizes. | |
| (WebInspector.QuickConsole.prototype._viewContainerScroll): | |
| Don't adjust the size, just show/hide the divider. | |
| (WebInspector.QuickConsole.prototype._viewContainerClick.afterDispatches): | |
| (WebInspector.QuickConsole.prototype._viewContainerClick.afterClickHandling): | |
| (WebInspector.QuickConsole.prototype._viewContainerClick): | |
| Adjust the size, but only after any possible work. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Don't break into the debugger when evaluating an expression in the console that triggers an exception. | |
| The exception will still be logged as the result in the console. We might tweak how this works later, | |
| but right now breaking into the debugger for this is annoying. This change matches open source. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/JavaScriptLogViewController.js: | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand): Pass true for doNotPauseOnExceptions parameter. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Remove an overzealous assert in DebuggerManager. | |
| The script identifier can be reused, so just make a new Script and insert it into the map again. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): Removed console.assert. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Clean up the styles for the console and log views. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/JavaScriptTextPrompt.css: | |
| (.javascript-prompt): Adjust the padding and remove the margin. | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| (WebInspector.JavaScriptTextPrompt): Set the text to "" so a "<br>" is inserted into the prompt. This lets the insertion | |
| caret to position correctly. | |
| * UserInterface/LogContentView.css: | |
| (.console-message, .console-user-command): Adjust the padding and remove the margin. | |
| (.console-message::before, .console-user-command::before, .javascript-prompt::before, .console-group-title::before): | |
| Don't use a negative margin, make it a positive one. The padding above makes room. | |
| (.console-group-messages .section .header::before): Bump up the disclosure triangle, it was 1px too low. | |
| (.console-group-messages .section .header .title): Reset the line-height to make the logged object not take up extra space. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .toolbar > .text-prompt > .javascript-prompt): Reduce top position to better center the prompt. | |
| 2012-03-12 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where the whole Web Inspector Ui would just 1px after typing in the quick console. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .toolbar): Removed -webkit-box-sizing. | |
| (.quick-console > .toolbar > .navigation-bar): Set the height to 21px so it does not extend out of .toolbar. | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Give the QuickConsole a LogViewController. The JavaScriptTextPrompt will | |
| go in the toolbar, and the ViewContainer will hold the ConsoleGroup output. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): | |
| (.quick-console > .toolbar > .text-prompt): | |
| (.quick-console > .toolbar > .text-prompt > .javascript-prompt): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.didAppendConsoleMessage): | |
| (WebInspector.QuickConsole.prototype._mouseWasClicked): | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Add a scroll divider box shadow when the Quick Console's view | |
| contains scrollable content. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console > .view-container): | |
| (.quick-console > .toolbar.scroll-divider): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.set collapsed): | |
| (WebInspector.QuickConsole.prototype.set height): | |
| (WebInspector.QuickConsole.prototype._resizerMouseUp): | |
| (WebInspector.QuickConsole.prototype._updateScrollDivider): | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Add JavaScriptLogViewController class. This holds a JavaScriptTextPrompt | |
| for input and a ConsoleGroup to put the output of JavaScript commands. | |
| The idea being that you could swap out either the input source or output | |
| destination. Currently this class just knows how to deal with JavaScript. | |
| This moves out most of the remaining JavaScript knowledge from | |
| LogContentView and puts it into this new controller. There is just one | |
| delegate message back. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/JavaScriptLogViewController.js: Added. | |
| (WebInspector.JavaScriptLogViewController): | |
| (WebInspector.JavaScriptLogViewController.prototype.constructor.WebInspector.JavaScriptLogViewController.get prompt): | |
| (WebInspector.JavaScriptLogViewController.prototype.get topConsoleGroup): | |
| (WebInspector.JavaScriptLogViewController.prototype.get currentConsoleGroup): | |
| (WebInspector.JavaScriptLogViewController.prototype.clear): | |
| (WebInspector.JavaScriptLogViewController.prototype.appendConsoleMessage): | |
| (WebInspector.JavaScriptLogViewController.prototype._requestClearMessages): | |
| (WebInspector.JavaScriptLogViewController.prototype._promptKeyDown): | |
| (WebInspector.JavaScriptLogViewController.prototype._enterKeyPressed): | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand.printResult): | |
| (WebInspector.JavaScriptLogViewController.prototype._appendCommand): | |
| (WebInspector.JavaScriptLogViewController.prototype._appendConsoleMessage): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.constructor.WebInspector.LogContentView.messageAdded): | |
| (WebInspector.LogContentView.prototype.consoleCleared): | |
| (WebInspector.LogContentView.prototype.didAppendConsoleMessage): | |
| (WebInspector.LogContentView.prototype._messagesClicked): | |
| * UserInterface/Main.html: | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Remove unused OpenSource code from LogContentView. | |
| Also simplify keyboard shortcut registrations. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleCommandResult.js: | |
| (WebInspector.ConsoleCommandResult): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype._appendCommand.printResult): | |
| (WebInspector.LogContentView.prototype._appendCommand): | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Add OpenSource's ConsoleView copyright headers to JSTextPrompt, ConsoleGroup, and Command files. | |
| Add OpenSource's ConsoleMessage* copyright headers to ConsoleMessage* files. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleCommand.js: | |
| * UserInterface/ConsoleCommandResult.js: | |
| * UserInterface/ConsoleGroup.js: | |
| * UserInterface/ConsoleMessage.js: | |
| * UserInterface/ConsoleMessageImpl.js: | |
| * UserInterface/JavaScriptTextPrompt.js: | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Split ConsoleGroup, ConsoleCommand, and ConsoleCommandResult into | |
| separate files and do a tiny bit of cleanup to match the Safari | |
| frontend style. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ConsoleCommand.js: Added. | |
| (WebInspector.ConsoleCommand): | |
| (WebInspector.ConsoleCommand.prototype.constructor.WebInspector.ConsoleCommand.clearHighlight): | |
| (WebInspector.ConsoleCommand.prototype.highlightSearchResults): | |
| (WebInspector.ConsoleCommand.prototype.matchesRegex): | |
| (WebInspector.ConsoleCommand.prototype.toMessageElement): | |
| (WebInspector.ConsoleCommand.prototype._formatCommand): | |
| * UserInterface/ConsoleCommandResult.js: Added. | |
| (WebInspector.ConsoleCommandResult): | |
| (WebInspector.ConsoleCommandResult.prototype.constructor.WebInspector.ConsoleCommandResult.toMessageElement): | |
| * UserInterface/ConsoleGroup.js: Added. | |
| (WebInspector.ConsoleGroup): | |
| (WebInspector.ConsoleGroup.prototype.constructor.WebInspector.ConsoleGroup.addMessage): | |
| (WebInspector.ConsoleGroup.prototype._titleClicked): | |
| * UserInterface/ConsoleMessage.js: | |
| (WebInspector.ConsoleMessage.create): | |
| * UserInterface/LogContentView.js: | |
| * UserInterface/Main.html: | |
| 2012-03-11 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Extract the JavaScript TextPrompt details into a new class, | |
| JavaScriptTextPrompt, which is a TextPrompt with JavaScript | |
| completion logic. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/JavaScriptTextPrompt.js: Added. | |
| (WebInspector.JavaScriptTextPrompt): | |
| (WebInspector.JavaScriptTextPrompt.prototype.constructor.WebInspector.JavaScriptTextPrompt.get promptElement): | |
| (WebInspector.JavaScriptTextPrompt.prototype.completions): | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions.evaluated.getCompletions): | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions.evaluated): | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions.receivedPropertyNamesFromEval): | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions.receivedPropertyNames): | |
| (WebInspector.JavaScriptTextPrompt.prototype._completions): | |
| (WebInspector.JavaScriptTextPrompt.prototype._reportCompletions): | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): | |
| (WebInspector.LogContentView.prototype.disable): | |
| (WebInspector.LogContentView.prototype.shown): | |
| (WebInspector.LogContentView.prototype._scheduleScrollIntoView.scrollIntoView): | |
| (WebInspector.LogContentView.prototype._scheduleScrollIntoView): | |
| (WebInspector.LogContentView.prototype._immediatelyScrollIntoView): | |
| * UserInterface/Main.html: | |
| 2012-03-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11025039> Console error when right clicking in Console: missing WebInspector.populateHrefContextMenu | |
| Remove unnecessary or unsupported Console contextmenu options that | |
| came from OpenSource. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._handleContextMenuEvent): | |
| * Localizations/en.lproj/localizedStrings.js: | |
| 2012-03-11 Timothy Hatcher <timothy@apple.com> | |
| Don't highlight non-enumerable properties at the top level for Local, Closure, and Catch scopes. | |
| Those scopes are synthesized scope objects, unlike Global and With scopes. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ObjectPropertiesSection.js: | |
| (WebInspector.ObjectPropertyTreeElement.prototype.update): Check for dontHighlightNonEnumerablePropertiesAtTopLevel. | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh): Set dontHighlightNonEnumerablePropertiesAtTopLevel | |
| for the Local, Closure, and Catch scopes. | |
| 2012-03-11 Timothy Hatcher <timothy@apple.com> | |
| Select and show the Scope Chain details sidebar panel when paused. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector._debuggerDidPause): Set a flag to show it when available. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Check for the flag and show the panel. | |
| 2012-03-11 Timothy Hatcher <timothy@apple.com> | |
| Populate the Scope Chain details sidebar panel. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Main.html: Included ScopeVariableTreeElement.js. | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh): Build ObjectPropertiesSections and DetailsSections | |
| for each ScopeChainNode in the scope chain. | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh.delayedWork): Added. Append the DetailsSections. | |
| * UserInterface/ScopeVariableTreeElement.js: Copied from OpenSource/Source/WebCore/inspector/front-end/ScopeChainSidebarPane.js. | |
| Some code style clean up and modifications to how _expandedProperties and the _propertyIdentifier prefix are accessed. | |
| 2012-03-11 Timothy Hatcher <timothy@apple.com> | |
| Clean up the styles for properties sections and support creation without the header element. | |
| This is needed for the Scope Chain sidebar panel. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section): Removed padding and background properties. | |
| (.sidebar > .panel.details.css-style .styles-section .header): Removed background properties. | |
| (.sidebar > .panel.details.css-style .styles-section.no-header .properties): Added. Reset padding. | |
| * UserInterface/ComputedStylePropertiesSection.js: | |
| (WebInspector.ComputedStylePropertiesSection): Call the PropertiesSection constructor after | |
| some initial setup since Section will now call expand() when there is no header. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): Use the syntax-highlighted class name constant. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.properties): Added. Specify padding. | |
| * UserInterface/DetailsSectionPropertiesRow.js: | |
| (WebInspector.DetailsSectionPropertiesRow): Add the syntax-highlighted class name. | |
| * UserInterface/PropertiesSection.js: | |
| (WebInspector.PropertiesSection): Call the Section constructor after some initial setup since | |
| Section will now call expand() when there is no header. | |
| * UserInterface/Section.css: | |
| (.section.expanded.no-header .properties): Added. Reset padding-left. | |
| * UserInterface/Section.js: | |
| (WebInspector.Section): Don't create the header element if there if title and subtitle are not | |
| strings or Nodes. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Removed syntax-highlighted class name since it is added | |
| by DetailsSectionPropertiesRow now. | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: Removed background-color so this does not cause | |
| sidebar to be white. | |
| * UserInterface/SyntaxHighlightingSupport.js: Added syntax-highlighted class name constant. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Use constant from SyntaxHighlightingSupport.js. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Add the start of the Scope Chain details sidebar panel which will show all the variables | |
| available when paused in the debugger. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Images/NavigationItemVariable.pdf: Added. | |
| * UserInterface/Main.html: Included ScopeChainDetailsSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a ScopeChainDetailsSidebarPanel and include it. | |
| * UserInterface/ScopeChainDetailsSidebarPanel.js: Added. | |
| (WebInspector.ScopeChainDetailsSidebarPanel): | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.inspect): Look for CallFrame objects. | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.get callFrame): | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.set callFrame): | |
| (WebInspector.ScopeChainDetailsSidebarPanel.prototype.refresh): Needs implemented. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.get supplementalRepresentedObjects): Include _callFrame. | |
| (WebInspector.TextResourceContentView.prototype._updateExecutionLineNumber): Store the activeCallFrame when | |
| it applies to this resource to we can return it in supplementalRepresentedObjects. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Add support to ContentView for supplemental represented objects. | |
| Supplemental represented objects can be used to provide more matching choices to the details | |
| sidebar panels for things that are are not represented as path components in the navigation bar. | |
| This support will be used to supply the call frame that is active in a TextResourceContentView, | |
| for the purposes of showing a details sidebar panel with scope chain information. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView): Listen for the SupplementalRepresentedObjectsDidChange event. | |
| (WebInspector.ClusterContentView.prototype.get supplementalRepresentedObjects): Added. Pass through | |
| the current content view's supplementalRepresentedObjects. | |
| (WebInspector.ClusterContentView.prototype._contentViewSupplementalRepresentedObjectsDidChange): Added. | |
| Fire the SupplementalRepresentedObjectsDidChange on behalf of the current content view. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Listen for the SupplementalRepresentedObjectsDidChange event. | |
| (WebInspector.ContentBrowser.prototype.get currentRepresentedObjects): Include the current content view's | |
| supplementalRepresentedObjects if they are not null and not empty. | |
| (WebInspector.ContentBrowser.prototype._contentViewSupplementalRepresentedObjectsDidChange): Added. | |
| Dispatch the CurrentRepresentedObjectsDidChange event soon. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get supplementalRepresentedObjects): Added stub. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Include scope variables when doing autocompletion in the console. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CallFrame.js: | |
| (WebInspector.CallFrame.prototype.collectScopeChainVariableNames): Added. Walk the scope chain and | |
| request all the properties for each scope node object. | |
| (WebInspector.CallFrame.prototype.collectScopeChainVariableNames.propertiesCollected): Added. Add the property | |
| names to the result and call the callback when pendingRequests is 0. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._completions): Use CallFrame.collectScopeChainVariableNames. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Support evaluating against the local scope when paused in the debugger. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.evalInInspectedWindow): Use DebuggerAgent.evaluateOnCallFrame | |
| when there is an active call frame. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Move the flashing prevention code from DebugSidebarPanel to DebuggerManager. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): Listen for the new CallFramesDidChange event instead of | |
| the Paused and Resumed events. | |
| (WebInspector.DebugSidebarPanel.prototype._showNotPausedEmptyContentPlaceholder): Added. | |
| (WebInspector.DebugSidebarPanel.prototype._updateEmptyContentPlaceholder): Updated the message. | |
| (WebInspector.DebugSidebarPanel.prototype._debuggerCallFramesDidChange): Check for null callFrames | |
| and call _showNotPausedEmptyContentPlaceholder. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): Remove assert, since we might be paused still. | |
| Clear the delayed resume timeout. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): Delay clearing the state and firing events. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Add debugger controls for pause, resume, step over, step in, and step out. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Images/Pause.pdf: Added. | |
| * UserInterface/Images/Resume.pdf: Added. | |
| * UserInterface/Images/StepInto.pdf: Added. | |
| * UserInterface/Images/StepOut.pdf: Added. | |
| * UserInterface/Images/StepOver.pdf: Added. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Create the button items. | |
| (WebInspector.QuickConsole.prototype._debuggerPauseResumeButtonClicked): Added. | |
| (WebInspector.QuickConsole.prototype._debuggerStepOverButtonClicked): Added. | |
| (WebInspector.QuickConsole.prototype._debuggerStepIntoButtonClicked): Added. | |
| (WebInspector.QuickConsole.prototype._debuggerStepOutButtonClicked): Added. | |
| (WebInspector.QuickConsole.prototype._debuggerDidPause): Added. | |
| (WebInspector.QuickConsole.prototype._debuggerDidResume): Added. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Use ToggleButtonNavigationItem for the quick console toggle button. | |
| Also start using the right artwork for the glyph. | |
| Part of: <rdar://problem/10319586> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/ToggleArrowDown.pdf: Added. | |
| * UserInterface/Images/ToggleArrowUp.pdf: Added. | |
| * UserInterface/QuickConsole.css: Removed styles to flip the arrow when collapsed. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Use ToggleButtonNavigationItem. Add a divider to the left of the button. | |
| (WebInspector.QuickConsole.prototype.set collapsed): Change the image for the toggle button. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Remove QuickConsoleButtonNavigationItem and merge its functionality down into ButtonNavigationItem. | |
| Having a special subclass prevent us from using ToggleButtonNavigationItem without adding another | |
| special QuickConsoleToggleButtonNavigationItem subclass. | |
| Part of: <rdar://problem/10319586> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar > .item.suppress-emboss > .glyph): | |
| (.navigation-bar > .item.suppress-emboss:active > .glyph): | |
| (.navigation-bar > .item.button.disabled > .glyph): | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): Call _updateImage and the suppress-emboss style class if needed. | |
| (WebInspector.ButtonNavigationItem.prototype.set image): Call _updateImage. | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Generate a background-size for _suppressEmboss. | |
| (WebInspector.ButtonNavigationItem.prototype._canvasIdentifier): Added assert. | |
| (WebInspector.ButtonNavigationItem.prototype._updateImage): Added. | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages): Added assert. | |
| * UserInterface/Main.html: Removed QuickConsoleButtonNavigationItem.{css,js}. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): Use ButtonNavigationItem. | |
| * UserInterface/QuickConsoleButtonNavigationItem.css: Removed. | |
| * UserInterface/QuickConsoleButtonNavigationItem.js: Removed. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Make line numbers in the Breakpoint sidebar be 1-based. Also fixes a couple asserts that the | |
| breakpoint lineNumber is 0-based. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): Fix assert. | |
| (WebInspector.Breakpoint.prototype.set lineNumber): Ditto. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement.prototype._updateMainTitle): Add 1 to the user visible number. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Select the Debug sidebar panel and show the navigation sidebar when the debugger pauses. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added Paused event listener. | |
| (WebInspector._debuggerDidPause): Added. | |
| 2012-03-10 Timothy Hatcher <timothy@apple.com> | |
| Highlight the current execution line. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel.prototype._debuggerDidPause): Select the active call frame tree element. | |
| (WebInspector.DebugSidebarPanel.prototype._treeElementSelected): Set the active call frame. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.get activeCallFrame): Added. | |
| (WebInspector.DebuggerManager.prototype.set activeCallFrame): Added. Fire ActiveCallFrameDidChange | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): Set _activeCallFrame and fire ActiveCallFrameDidChange. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): Ditto. | |
| * UserInterface/Images/InstructionPointer.png: Added. | |
| * UserInterface/Images/InstructionPointer@2x.png: Added. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter > .line-number.execution-line::after): | |
| (.text-editor .text-editor-text-chunk.execution-line): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Initialize _executionLineNumber to NaN. | |
| (WebInspector.TextEditor.prototype.get executionLineNumber): Added. | |
| (WebInspector.TextEditor.prototype.set executionLineNumber): Added. Call _updateExecutionLineNumber. | |
| (WebInspector.TextEditor.prototype.singleLineElementForLine): Handle a null result from _textChunkForLine. | |
| (WebInspector.TextEditor.prototype._updateExecutionLineNumber): Added. Removes from the old line and adds to the new. | |
| (WebInspector.TextEditor.prototype._updateLineNumbers): Make lineNumber 0-based instead of 1-based. | |
| (WebInspector.TextEditor.prototype._addBreakpointElementToLineElementWithInfo): Add 1 for user visible line numbers. | |
| (WebInspector.TextEditor.prototype._removePossibleBreakpointElementFromLineElement): Ditto. | |
| (WebInspector.TextEditor.prototype._textChunkForLine): Handle negative numbers and NaN. | |
| (WebInspector.TextEditor.prototype._breakTextChunkAtIndexIntoSingleLineTextChunks): Assert the textChunk isn't null. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): | |
| (WebInspector.TextResourceContentView.prototype._updateExecutionLineNumber): | |
| 2012-03-09 Timothy Hatcher <timothy@apple.com> | |
| Populate the Debug sidebar with call frames when the debugger pauses. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CallFrameIcons.css: Added. | |
| (.function-icon .icon): | |
| (.event-listener-icon .icon): | |
| * UserInterface/CallFrameTreeElement.js: Added. | |
| (WebInspector.CallFrameTreeElement): | |
| (WebInspector.CallFrameTreeElement.prototype.get callFrame): | |
| * UserInterface/DebugSidebarPanel.js: | |
| (WebInspector.DebugSidebarPanel): | |
| (WebInspector.DebugSidebarPanel.prototype._updateEmptyContentPlaceholder): Added. | |
| (WebInspector.DebugSidebarPanel.prototype._debuggerDidPause): Added. Create CallFrameTreeElements. | |
| (WebInspector.DebugSidebarPanel.prototype._debuggerDidResume): Added. Set a timeout for delayedWork. | |
| (WebInspector.DebugSidebarPanel.prototype._debuggerDidResume.delayedWork): Added. Remove the tree elements. | |
| (WebInspector.DebugSidebarPanel.prototype._treeElementSelected): Added. Show the resource source code. | |
| * UserInterface/Images/EventListener.pdf: Added. | |
| * UserInterface/Images/Function.pdf: Added. | |
| * UserInterface/Main.html: Included CallFrameIcons.css and CallFrameTreeElement.js. | |
| 2012-03-09 Timothy Hatcher <timothy@apple.com> | |
| Process the call frames when the debugger pauses and create easy to use objects. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CallFrame.js: Added. | |
| (WebInspector.CallFrame): | |
| (WebInspector.CallFrame.prototype.get id): | |
| (WebInspector.CallFrame.prototype.get scriptLocation): | |
| (WebInspector.CallFrame.prototype.get functionName): | |
| (WebInspector.CallFrame.prototype.get thisObject): | |
| (WebInspector.CallFrame.prototype.get scopeChain): | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.get callFrames): Added. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): Process the callFramesPayload. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): Clear the _callFrames. | |
| (WebInspector.DebuggerManager.prototype._scriptLocationFromPayload): Added. Helper. | |
| (WebInspector.DebuggerManager.prototype._scopeChainFromPayload): Added. Helper. | |
| (WebInspector.DebuggerManager.prototype._scopeChainNodeFromPayload): Added. Helper. | |
| * UserInterface/Main.html: Included CallFrame.js, ScopeChainNode.js, and ScriptLocation.js. | |
| * UserInterface/ScopeChainNode.js: Added. | |
| (WebInspector.ScopeChainNode): | |
| (WebInspector.ScopeChainNode.prototype.get type): | |
| (WebInspector.ScopeChainNode.prototype.get object): | |
| * UserInterface/ScriptLocation.js: Added. | |
| (WebInspector.ScriptLocation): | |
| (WebInspector.ScriptLocation.prototype.get script): | |
| (WebInspector.ScriptLocation.prototype.get lineNumber): | |
| (WebInspector.ScriptLocation.prototype.get columnNumber): | |
| 2012-03-09 Timothy Hatcher <timothy@apple.com> | |
| Track the paused state of the debugger and add functions to pause, resume, and step. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager.prototype.get paused): Added. | |
| (WebInspector.DebuggerManager.prototype.pause): Added. | |
| (WebInspector.DebuggerManager.prototype.resume): Added. | |
| (WebInspector.DebuggerManager.prototype.stepOver): Added. | |
| (WebInspector.DebuggerManager.prototype.stepInto): Added. | |
| (WebInspector.DebuggerManager.prototype.reset): Reset _paused and fire the Resumed event. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidPause): Set _paused and fire the Paused event. | |
| (WebInspector.DebuggerManager.prototype.debuggerDidResume): Set _paused and fire the Resumed event. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.paused): Call DebuggerManager.debuggerDidPause. | |
| (WebInspector.DebuggerObserver.prototype.resumed): Call DebuggerManager.debuggerDidResume. | |
| 2012-03-09 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.Script and create them when scripts are parsed. | |
| Part of: <rdar://problem/10318770> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.reset): Clear the script map. | |
| (WebInspector.DebuggerManager.prototype.scriptDidParse): Added. Create a Script instance | |
| and add it to the id map. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): Call DebuggerManager.scriptDidParse. | |
| * UserInterface/Main.html: Included Script.js. | |
| * UserInterface/Script.js: Added. | |
| (WebInspector.Script): | |
| (WebInspector.Script.prototype.get id): | |
| (WebInspector.Script.prototype.get range): | |
| (WebInspector.Script.prototype.get url): | |
| (WebInspector.Script.prototype.get urlComponents): | |
| 2012-03-09 Timothy Hatcher <timothy@apple.com> | |
| Add a way to break on all exceptions and uncaught exceptions. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BreakpointIcons.css: | |
| (.breakpoint-exception-icon .icon): Added. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Create BreakpointTreeElements for the two exception breakpoints. | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement): Add support for a custom style class and title. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): Create an all exceptions and and all uncaught exceptions breakpoint. | |
| (WebInspector.DebuggerManager.prototype.get allExceptionsBreakpoint): Added. | |
| (WebInspector.DebuggerManager.prototype.get allUncaughtExceptionsBreakpoint): Added. | |
| (WebInspector.DebuggerManager.prototype.breakpointResolved): Remove an overzealous assert. | |
| (WebInspector.DebuggerManager.prototype._breakpointDisabledStateDidChange): Intercept the exception breakpoints | |
| and call _updateBreakOnExceptionsState after updating the settings. | |
| (WebInspector.DebuggerManager.prototype._updateBreakOnExceptionsState): Added. Communicate the state to the | |
| backend and update resolved state. | |
| 2012-03-10 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Allow resizing of the quick console. The quick console behaves like | |
| sidebars. It toggles collapsed state when double clicked, and opens | |
| or closes when resizing. The allowed maximum height is 75% of the | |
| screen. When the window is resized smaller, we may need to shorten | |
| the console to be within the 75%. | |
| Remember the height before we collapsed so that if you toggle | |
| immediately it will restore the height to what it was. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector._contentBrowserSizeDidChange): | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): | |
| (.quick-console > .resizer): | |
| Position the quick-console resizer like a sidebar resizer. 5px | |
| wide, with a couple pixels above and below the border. | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.get collapsedHeight): | |
| (WebInspector.QuickConsole.prototype.get minimumUncollapsedHeight): | |
| (WebInspector.QuickConsole.prototype.get maximumUncollapsedHeight): | |
| (WebInspector.QuickConsole.prototype.updateLayout): | |
| (WebInspector.QuickConsole.prototype.get height): | |
| (WebInspector.QuickConsole.prototype.set height): | |
| (WebInspector.QuickConsole.prototype._toggleButtonClicked): | |
| (WebInspector.QuickConsole.prototype._resizerDoubleClicked): | |
| (WebInspector.QuickConsole.prototype._resizerMouseDown): | |
| (WebInspector.QuickConsole.prototype._resizerMouseMoved): | |
| (WebInspector.QuickConsole.prototype._resizerMouseUp): | |
| 2012-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Pull the console out of ContentBrowser and instead just put it underneath. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| * UserInterface/Main.css: | |
| (#content): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/QuickConsole.css: | |
| (#quick-console): | |
| (#quick-console.collapsed): | |
| (#quick-console .navigation-bar > .console-toggle): | |
| (#quick-console.collapsed .navigation-bar > .console-toggle): | |
| (#quick-console > .quick-console-view-container): | |
| (#quick-console > .quick-console-toolbar): | |
| (#quick-console > .quick-console-toolbar > .quick-console-text-prompt): | |
| (#quick-console > .quick-console-toolbar > .navigation-bar): | |
| 2012-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Add a toggle button to the quick console's navigation bar. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Main.html: | |
| Misc changes. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): | |
| (WebInspector.ButtonNavigationItem.prototype.get glyphElement): | |
| Expose glyphElement for QuickConsole buttons to use. | |
| Add a way to suppress creating embossed images. | |
| * UserInterface/QuickConsoleButtonNavigationItem.css: Added. | |
| (.navigation-bar > .item.quick-console-button): | |
| (.navigation-bar > .item.quick-console-button:active): | |
| * UserInterface/QuickConsoleButtonNavigationItem.js: Added. | |
| (WebInspector.QuickConsoleButtonNavigationItem): | |
| (WebInspector.QuickConsoleButtonNavigationItem.prototype.generateStyleText): | |
| The QuickConsole buttons are just styled with different opacities. We | |
| can remove most of the custom NavigationItem styles and set the glyph | |
| image directly. | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console .navigation-bar > .console-toggle): | |
| (.quick-console.collapsed .navigation-bar > .console-toggle): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.get collapsed): | |
| (WebInspector.QuickConsole.prototype.set collapsed): | |
| (WebInspector.QuickConsole.prototype._toggleButtonClicked): | |
| Give the console a toggle button. | |
| 2012-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| View hierarchy for the quick console: | |
| <div class="quick-console"> | |
| <!-- | |
| Content view container. When the console adjusts its height this becomes | |
| visible. This flex fills the vertical space. | |
| --> | |
| <div class="view-container"></div> | |
| <!-- | |
| Toolbar fixed to the bottom. TextPrompt and NavigationBar with buttons. | |
| Fixed height, position:relative to appear on top, and the text-prompt | |
| flex fills horizontally. | |
| --> | |
| <div class="toolbar"> | |
| <div class="text-prompt" contenteditable="true"></div> | |
| <div class="navigation-bar"></div> | |
| </div> | |
| </div> | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/QuickConsole.css: | |
| (.quick-console): | |
| (.quick-console.collapsed): | |
| (.quick-console > .view-container): | |
| (.quick-console > .toolbar): | |
| (.quick-console > .toolbar > .text-prompt): | |
| (.quick-console > .toolbar > .navigation-bar): | |
| * UserInterface/QuickConsole.js: | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.get element): | |
| * UserInterface/QuickConsoleNavigationBar.js: Added. | |
| (WebInspector.QuickConsoleNavigationBar): | |
| (WebInspector.QuickConsoleNavigationBar.prototype.addNavigationItem): | |
| Add navigation items on the left. Since we will always want the toggle button on the right. | |
| 2012-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319586> Implement the Quick Console for the new Web Inspector design | |
| Add the QuickConsole to the bottom of the ContentBrowser. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| * UserInterface/Main.html: | |
| * UserInterface/QuickConsole.css: Added. | |
| (.quick-console): | |
| (body.window-inactive .navigation-bar): | |
| * UserInterface/QuickConsole.js: Added. | |
| (WebInspector.QuickConsole): | |
| (WebInspector.QuickConsole.prototype.get element): | |
| 2012-03-09 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11017753> Sometimes Load event-marker doesn't show up (99%) | |
| When an event-marker is very close to, but not, the new maximum boundary | |
| the maximum boundary wasn't being extended to allow for a nice display of | |
| the event-marker. Now, if the event-marker is within 3% of the maximum | |
| boundary, then just extend the maximum boundary by 3%. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkGraphCalculator.js: | |
| (WebInspector.NetworkTimeCalculator.prototype.updateBoundariesForEventMarker): | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Follow up to my previous fix for reloading the page sometimes removes the main resource from breakpoints. | |
| Not all breakpoints pass in the resource to _addBreakpoint. If resource was undefined it would cause | |
| a new ResourceTreeElement to be created for each breakpoint. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Lookup the resource first, | |
| so it can always be compared to the ResourceTreeElement's resource. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Follow-up patch to clean up DOMTreeManager events data. | |
| Always pass the node as "node" and parentNode as "parent". There was | |
| one case looking for parentNode that was totally wrong. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._domNodeChanged): | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._characterDataModified): | |
| (WebInspector.DOMTreeManager.prototype._childNodeInserted): | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater.prototype._characterDataModified): | |
| (WebInspector.DOMTreeUpdater.prototype._nodeInserted): | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11005082> Editing node attribute should or HTML should update Path Components | |
| Update path components when the selected node has an attribute | |
| or character data change. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): | |
| (WebInspector.DOMTreeContentView.prototype._domNodeChanged): | |
| In the attribute events the changed node is event.data.node. | |
| In the character data event the changed node is event.data. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11014611> Inline Web SQL Database DataGrid resizers are not updated if inspector window resized | |
| When the window resizes, the ContentView gets an updateLayout. Use this | |
| opportunity to update the layout of any inline DataGrids so that their | |
| resizers are positioned correctly. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DatabaseContentView.js: | |
| (WebInspector.DatabaseContentView.prototype.constructor.WebInspector.DatabaseContentView.updateLayout): | |
| (WebInspector.DatabaseContentView.prototype._appendViewQueryResult): | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Remove uses of WebInspector.useLowerCaseMenuTitles. On the Safari frontend | |
| this is always yes and the function doesn't even exist. This code is currently | |
| unreachable, the change is to fix update-safari-localizable-strings usage. | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/LogContentView.js: | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Tweak the event-markers so they are always behind the network datagrid's | |
| timeline pills. This is done by making three layers: event-marker (bottom), | |
| timeline pills (middle), and tooltip div (top). | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.css: | |
| (.network-timeline-decorations > .event-markers > .event-marker): | |
| (.network-datagrid tr > td.timeline-column): | |
| (.network-timeline-decorations > .event-markers > .event-marker-tooltip): | |
| Style the three layers, z-indexes. | |
| * UserInterface/TimelinesContentView.css: | |
| Remove old z-index. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| Rename the constants to use the standard "StyleClassName" suffix and | |
| give the DataGrid a class name. | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations > .event-markers > .event-marker-tooltip): | |
| (.timeline-decorations > .event-markers > .event-marker): | |
| (.timeline-decorations > .event-markers > .event-marker.load-event): | |
| (.timeline-decorations > .event-markers > .event-marker.dom-content-event): | |
| (.timeline-decorations > .event-markers > .event-marker.timestamp): | |
| Drop the "wrapper" element. The event-marker now displays the same as the tooltip div. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateEventMarkers): | |
| Rename "wrapper" -> "tooltip" and position the tooltip and marker the same. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Remember if the Network DataGrid column group was collapsed or expanded. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._clickInColumnCollapser): | |
| (WebInspector.DataGrid.prototype.collapseColumnGroup): | |
| (WebInspector.DataGrid.prototype._collapseColumnGroupWithCell): | |
| Add collapseColumnGroup(name) API to DataGrid and share the | |
| code with the old path, when the user clicks the button. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype.didToggleColumnGroup): | |
| On creation load the setting, and save the setting on toggle. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| Give all columns a starting width (based on the auto-calculated widths). | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/11014578> DOM Storage DataGrids should be sortable | |
| Allow sorting of both of the DOM Storage DataGrid columns. | |
| Before sorting nodes, make sure to delete the creation node | |
| and re-add it in the end. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype._updateDataGridForDOMStorageEntries): | |
| (WebInspector.DOMStorageContentView.prototype._sortDataGrid): | |
| (WebInspector.DOMStorageContentView.prototype._insertNodesIntoDataGridWithSort.comparator): | |
| (WebInspector.DOMStorageContentView.prototype._insertNodesIntoDataGridWithSort): | |
| Share sort code with table creation and sort changed. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype.removeChild): | |
| When the creation node is removed, delete the reference to it. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Rename DataGrid methods and events. | |
| DataGrid.prototype.updateWidths -> updateLayout | |
| "sorting changed" event -> WebInspector.DataGrid.Event.SortChanged | |
| "width changed" event -> WebInspector.DataGrid.Event.DidLayout | |
| This then also renames the NetworkDataGrid event handlers | |
| and moves the sorting dispatch function into its only caller. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.updateLayout): | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._createDataGrid): | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView): | |
| (WebInspector.CSSSelectorProfileView.prototype.updateLayout): | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype.updateLayout): | |
| (WebInspector.CookieStorageContentView.prototype._rebuildTable): | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype.updateLayout): | |
| (WebInspector.DOMStorageContentView.prototype._showDOMStorageEntries): | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype.autoSizeColumns): | |
| (WebInspector.DataGrid.prototype.updateLayout): | |
| (WebInspector.DataGrid.prototype.applyColumnWidthsMap): | |
| (WebInspector.DataGrid.prototype._clickInHeaderCell): | |
| (WebInspector.DataGrid.prototype._resizerDragging): | |
| (WebInspector.DataGrid.prototype._endResizerDragging): | |
| * UserInterface/DatabaseTableContentView.js: | |
| (WebInspector.DatabaseTableContentView.prototype.updateLayout): | |
| (WebInspector.DatabaseTableContentView.prototype._queryFinished): | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.prototype.updateLayout): | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype._dataGridSortChanged): | |
| (WebInspector.NetworkDataGrid.prototype._dataGridDidLayout): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype.constructor.WebInspector.TimelinesContentView.showTimelineForRecordType): | |
| (WebInspector.TimelinesContentView.prototype.updateLayout): | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| Relayout the selected node when widths change. This is only needed for | |
| the selected node because currently it is the only node that can be | |
| displaying labels when the data grid's columns widths change. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.updateLayout): | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype._updateLayout): | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.updateLayout): | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Draw the event markers over the Network datagrid. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| Tooltip strings for the event-marker lines. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype.updateCalculatorBoundariesWithEventMarker): | |
| (WebInspector.NetworkDataGrid.prototype._updateDecorations): | |
| (WebInspector.NetworkDataGrid.prototype._updateEventMarkers): | |
| Let the calculator handle updating the bounds and the decorator drawing the markers. | |
| * UserInterface/NetworkGraphCalculator.js: | |
| (WebInspector.NetworkTimeCalculator.prototype.updateBoundariesForEventMarker): | |
| When updating boundaries for event markers its possible that event markers will | |
| arrive later then resources (onload or console.timeStamp() for example). If such | |
| an event is more than 10% past the current bounds we don't stretch the bounds | |
| because it would distort the graph too much. Likewise, if a timestamp will become | |
| the new maximum extend an extra 3% to provide some white-space past the marker. | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations > .event-markers): | |
| (.timeline-decorations > .event-markers > .event-marker-wrapper): | |
| This wrapper provides a larger surface area for the tooltip. 9px total (4px + 1px + 4px). | |
| (.timeline-decorations > .event-markers > .event-marker-wrapper > .event-marker): | |
| (.timeline-decorations > .event-markers > .event-marker-wrapper > .event-marker.load-event): | |
| (.timeline-decorations > .event-markers > .event-marker-wrapper > .event-marker.dom-content-event): | |
| (.timeline-decorations > .event-markers > .event-marker-wrapper > .event-marker.timestamp): | |
| Different colors for the different types of event-markers. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid tr.selected td.timeline-column): | |
| Make sure the selected timeline datagrid row draws over the event-marker. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations): | |
| (WebInspector.TimelineDecorations.prototype.updateEventMarkers.toolTipForEventMarker): | |
| (WebInspector.TimelineDecorations.prototype.updateEventMarkers): | |
| Position and style the event markers within the bounds. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Add TimelineEventMarkers to the Network's TimelineDecorations. They are | |
| not displayed yet, and the TimelineOverview won't show markers yet. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._recordedEventMarker): | |
| Pass incoming event markers to the current datagrid. Only the network data grid uses them. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): | |
| (WebInspector.TimelinesContentView.prototype._updateCalculatorBoundsForPendingRecordsAndEventMarkers): | |
| When updating the bounds of the timeline graph also provide pending event markers | |
| so that late events (like onload) can stretch the maximum bounds if necessary. | |
| * UserInterface/TimelineDataGrid.js: | |
| (WebInspector.TimelineDataGrid.prototype.updateCalculatorBoundariesWithEventMarker): | |
| (WebInspector.TimelineDataGrid.prototype.addTimelineEventMarker): | |
| Default empty implementations for DataGrids to handle event markers. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype.reset): | |
| (WebInspector.NetworkDataGrid.prototype.addTimelineEventMarker): | |
| Pass event markers on to the decorations manager. We also need a way to reset now. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations): | |
| (WebInspector.TimelineDecorations.prototype.addTimelineEventMarker): | |
| Keep track of event makers we may need to display. | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview.prototype.clear): | |
| Add clear, just in case it is needed later. The overview currently doesn't handle event markers. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Add a TimelineEventMarker class for marked timestamps. Current | |
| event markers that we are interested in are the DOMContent event, | |
| Load event, and console.timeStamp() calls. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.domContentEventFired): | |
| (WebInspector.PageObserver.prototype.loadEventFired): | |
| Point out that these are not needed, they are covered by TimelineAgent | |
| in the Safari frontend. | |
| * UserInterface/TimelineEventMarker.js: Added. | |
| (WebInspector.TimelineEventMarker): | |
| (WebInspector.TimelineEventMarker.prototype.constructor.WebInspector.TimelineEventMarker.get timestamp): | |
| (WebInspector.TimelineEventMarker.prototype.get type): | |
| Simple class encapsulating a timestamp and type. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager): | |
| (WebInspector.TimelineManager.prototype.get timelineEventMarkers): | |
| (WebInspector.TimelineManager.prototype.startRecording): | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| Keep a record of event markers. | |
| 2012-03-08 Joseph Pecoraro <pecoraro@apple.com> | |
| When hiding the dock button also hide the divider between the dock | |
| button and the sidebar's other navigation items. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ButtonNavigationItem.js: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._updateDockToggleButtonVisibility): | |
| * UserInterface/NavigationItem.js: | |
| (WebInspector.NavigationItem.prototype.get hidden): | |
| (WebInspector.NavigationItem.prototype.set hidden): | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Reloading the page sometimes removes the main resource from breakpoints. | |
| The _checkForOldResources function is delayed on the timeout. This caused the | |
| breakpoints to be appended to a ResourceTreeElement that will soon be removed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Create a new ResourceTreeElement | |
| if the resource is different from the previous ResourceTreeElement. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel.prototype._issueWasAdded): Ditto. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementForResource): Ditto. | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Communicate breakpoints to the backend and update the resolved state of the breakpoints. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): Initialize _id to null. | |
| (WebInspector.Breakpoint.prototype.get id): Added. | |
| (WebInspector.Breakpoint.prototype.set id): Added. | |
| (WebInspector.Breakpoint.prototype.set lineNumber): Report oldLineNumber in the event. | |
| (WebInspector.Breakpoint.prototype.get info): Updated comment. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Mark disabled breakpoints as resolved | |
| when they are added to the user interface. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): Call _setBreakpoint. | |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): Call _removeBreakpoint. | |
| (WebInspector.DebuggerManager.prototype.breakpointResolved): Added. | |
| (WebInspector.DebuggerManager.prototype.reset): Added. | |
| (WebInspector.DebuggerManager.prototype._setBreakpoint): Added. Talk to the DebuggerAgent. | |
| (WebInspector.DebuggerManager.prototype._setBreakpoint.didSetBreakpoint): | |
| (WebInspector.DebuggerManager.prototype._removeBreakpoint): Added. Talk to the DebuggerAgent. | |
| (WebInspector.DebuggerManager.prototype._removeBreakpoint.didRemoveBreakpoint): | |
| (WebInspector.DebuggerManager.prototype._breakpointLineNumberDidChange): Added. Call _removeBreakpoint. | |
| (WebInspector.DebuggerManager.prototype._breakpointLineNumberDidChange.breakpointRemoved): Call _setBreakpoint. | |
| (WebInspector.DebuggerManager.prototype._breakpointDisabledStateDidChange): Call _removeBreakpoint or _setBreakpoint. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.globalObjectCleared): Call DebuggerManager.reset. | |
| (WebInspector.DebuggerObserver.prototype.breakpointResolved): Call DebuggerManager.breakpointResolved. | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Use "resolved" to describe breakpoints instead of "inactive". | |
| The term inactive was confusing since we also have disabled. Using resolved better | |
| describes the property. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): | |
| (WebInspector.Breakpoint.prototype.set lineNumber): | |
| (WebInspector.Breakpoint.prototype.get resolved): Renamed from inactive. | |
| (WebInspector.Breakpoint.prototype.set resolved): Renamed from inactive. | |
| (WebInspector.Breakpoint.prototype.get info): | |
| * UserInterface/BreakpointTreeElement.css: | |
| (.item.breakpoint .status > .status-image): | |
| (.item.breakpoint .status > .status-image.resolved): | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement): | |
| (WebInspector.BreakpointTreeElement.prototype._updateStatus): | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter > .line-number > .breakpoint): | |
| (.text-editor > .gutter > .line-number.breakpoint-resolved > .breakpoint): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._addBreakpointElementToLineElementWithInfo): | |
| (WebInspector.TextEditor.prototype._removePossibleBreakpointElementFromLineElement): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): | |
| (WebInspector.TextResourceContentView.prototype.closed): | |
| (WebInspector.TextResourceContentView.prototype._updateBreakpointStatus): | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointInfo): | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointAdded): | |
| (WebInspector.TextResourceContentView.prototype.textEditorLineContentUpdated): | |
| (WebInspector.TextResourceContentView.prototype._textEditorBreakpointInfoForBreakpoint): | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Fix an assertion and exception that is seen sometimes when opening the Web Inspector. | |
| The _rebuildSections function is wired up to events. Those events can fire when we don't have | |
| a selected DOM node. So we need to return early in that case and not assert. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Return early if domNode is null. | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Fix a merge issue that caused breakpoint lines to not have an icon. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointTreeElement.js: Remove the duplicate GenericLineIconStyleClassName that | |
| had a typo in the value. | |
| 2012-03-08 Brian Weinstein <bweinstein@apple.com> | |
| <rdar://problem/11007383> Need a way to clear the current console log. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Call this._registerShortcuts. | |
| (WebInspector.LogContentView.prototype.consoleCleared): Renamed from _consoleCleared. | |
| (WebInspector.LogContentView.prototype._registerShortcuts): Remove the shortcut to dump memory, and remove | |
| the code to set up shortcuts screen. | |
| (WebInspector.LogContentView.prototype._requestClearMessages): Call to the LogManager. | |
| (WebInspector.LogContentView.prototype._promptKeyDown): Actually look up the shortcut in the shortcuts | |
| list. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.requestClearMessages): Call clearMessages on the ConsoleAgent, and fire | |
| an event saying the active log was cleared. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Listen for the active log being cleared. | |
| (WebInspector.LogSidebarPanel.prototype._activeLogCleared): Call consoleCleared on the active log content view. | |
| 2012-03-08 Brian Weinstein <bweinstein@apple.com> | |
| <rdar://problem/11012162> Log repeat counts are not updated when the console is open. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageRepeatCountUpdated): Call through to the LogManager. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._appendCommand): Call LogManager.repeatCountWasInterrupted. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.constructor.WebInspector.LogManager.initialize): Initialize whether or | |
| not the repeat count was interrupted (by the user entering a command in the log content view). | |
| (WebInspector.LogManager.prototype.messageWasAdded): Create a ConsoleMessage and call _addMessage. | |
| (WebInspector.LogManager.prototype.messageRepeatCountUpdated): If the repeat count wasn't interrupted, | |
| update the count. If it was, then clone our message element, and create a new one, and set its repeat | |
| and ignored count. | |
| (WebInspector.LogManager.prototype.repeatCountWasInterrupted): Set the flag indicating our repeat count | |
| was interrupted. | |
| (WebInspector.LogManager.prototype._addMessage): Add the message to our list of messages, set it as our | |
| previous message, and fire our event. | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Update the disabled and inactive state of breakpoints in the TextEditor gutter as they change. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.setBreakpointInfoForLine): Added. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Added event listeners for DisabledStateDidChange and InactiveStateDidChange. | |
| (WebInspector.TextResourceContentView.prototype.closed): Removed the added event listeners. | |
| (WebInspector.TextResourceContentView.prototype._updateBreakpointStatus): Added. Calls setBreakpointInfoForLine. | |
| 2012-03-08 Timothy Hatcher <timothy@apple.com> | |
| Show the status of each breakpoint in the Breakpoint sidebar. Also update the title when the line number changes. | |
| Clicking the breakpoint image will toggle the disabled state. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Breakpoint.js: | |
| * UserInterface/BreakpointTreeElement.css: Added. | |
| (.item.breakpoint .status > .status-image): | |
| (.item.breakpoint .status > .status-image.inactive): | |
| (.item.breakpoint .status > .status-image.disabled): | |
| * UserInterface/BreakpointTreeElement.js: | |
| (WebInspector.BreakpointTreeElement): | |
| (WebInspector.BreakpointTreeElement.prototype._updateMainTitle): Added. | |
| (WebInspector.BreakpointTreeElement.prototype._updateStatus): Added. | |
| (WebInspector.BreakpointTreeElement.prototype._statusImageElementMouseDown): Added | |
| (WebInspector.BreakpointTreeElement.prototype._statusImageElementClicked): Added | |
| * UserInterface/Images/BreakpointButton.pdf: Added. | |
| * UserInterface/Images/BreakpointInactiveButton.pdf: Added. | |
| * UserInterface/Main.html: Included BreakpointTreeElement.css. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Fix the AttributedString prototype chain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/AttributedString.js: Set the AttributedString prototype instead of the SourceTokenizer prototype. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Make selecting a breakpoint in the sidebar show the resource and reveal the line. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): Set onselect to _treeElementSelected. | |
| (WebInspector.BreakpointSidebarPanel.prototype._treeElementSelected): Added. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Populate the Breakpoint sidebar with breakpoints. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/BreakpointIcons.css: Added. | |
| (.breakpoint-generic-line-icon .icon): | |
| * UserInterface/BreakpointSidebarPanel.js: | |
| (WebInspector.BreakpointSidebarPanel): | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpoint): Added. Helper. | |
| (WebInspector.BreakpointSidebarPanel.prototype._addBreakpointsForResource): Added. Helper. | |
| (WebInspector.BreakpointSidebarPanel.prototype._resourceAdded): Added. Call _addBreakpointsForResource. | |
| (WebInspector.BreakpointSidebarPanel.prototype._mainResourceChanged): Added. Call _addBreakpointsForResource. | |
| (WebInspector.BreakpointSidebarPanel.prototype._breakpointAdded): Added. Call _addBreakpoint. | |
| (WebInspector.BreakpointSidebarPanel.prototype._breakpointRemoved): Added. Remove the breakpoint, and resource | |
| if that was the last breakpoint. | |
| (WebInspector.BreakpointSidebarPanel.prototype._checkForOldResources): | |
| (WebInspector.BreakpointSidebarPanel.prototype._checkForOldResources.delayedWork): Check for detached resources | |
| and remove them from the tree. | |
| * UserInterface/BreakpointTreeElement.js: Added. | |
| (WebInspector.BreakpointTreeElement): | |
| (WebInspector.BreakpointTreeElement.prototype.get breakpoint): | |
| * UserInterface/Main.html: Included BreakpointTreeElement.js and BreakpointIcons.css. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Rename ResourceSearchMatch.pdf to ResultLine.pdf to be more generic so it can be used by the Breakpoint sidebar. | |
| Part of: <rdar://problem/10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Images/ResultLine.pdf: Renamed from WebInspector/UserInterface/Images/ResourceSearchMatch.pdf. | |
| * UserInterface/SearchIcons.css: | |
| (.resource-match-icon .icon): Use ResultLine.pdf. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Persist breakpoints between sessions. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/Breakpoint.js: | |
| (WebInspector.Breakpoint): Support taking an info object or url. Make inactive default to true. | |
| The backend will later mark them as active once they are resolved. | |
| (WebInspector.Breakpoint.prototype.get info): Added. Returns an object to store. | |
| * UserInterface/DebuggerManager.js: | |
| (WebInspector.DebuggerManager): Iterate over the info objects in the setting and make breakpoints. | |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): Return early if null. | |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): Ditto. | |
| (WebInspector.DebuggerManager.prototype._inspectorClosing): Added. Call _saveBreakpoints. | |
| (WebInspector.DebuggerManager.prototype._saveBreakpoints): Added. Make an array of info objects | |
| and save them in the setting. | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Bring the padding down to 1px for both sides of the timeline graph. | |
| This makes the percent widths a little more accurate and matches | |
| the padding on the timeline overview. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid td.timeline-column): | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Dynamically determine the width of the localized string | |
| with similar table heading styles. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype._localizedTimelineHeaderWidth): | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Improve the header display to only show dividers within the visible range. | |
| Now, when we show dividers in that range, the first divider always has a left | |
| border, and the last divider only does when that column is not the active sort. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.css: | |
| (.network-timeline-decorations > .header > .divider:last-child): | |
| (.network-timeline-decorations:not(.sort-active) > .header > .divider:last-child): | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype._updateHeaderTimes): | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Changing the sort column might not be enough of a size difference to | |
| cause the headers to refresh. Force a refresh in this case. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype._sortChanged): | |
| (WebInspector.NetworkDataGrid.prototype._updateDecorations): | |
| (WebInspector.NetworkDataGrid.prototype._updateHeaderTimes): | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| The NetworkDataGrid's timeline graph should only show header | |
| values when its "details" columns are collapsed. Give | |
| TimelineDecorations a way to hide header times. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype.didToggleColumnGroup): | |
| Hide / show the header dividers when columns are collapsed / expanded. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| (WebInspector.TimelineDecorations.prototype.isShowingHeaderDividers): | |
| (WebInspector.TimelineDecorations.prototype.showHeaderDividers): | |
| (WebInspector.TimelineDecorations.prototype.hideHeaderDividers): | |
| Hide / show the header dividers by applying the "hidden" class to the headerElement. | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Give the NetworkDataGrid timeline TimelineDecorations. We want to | |
| make sure that the header labels don't overlap the column header | |
| "Timeline" on the left or sort / collapse columns button on the right. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._clickInHeaderCell): | |
| (WebInspector.DataGrid.prototype._sortChanged): | |
| (WebInspector.DataGrid.prototype.isColumnSortColumn): | |
| Expose a way for a subclass to act on sort changes and check | |
| if a column is the active sort column. | |
| * UserInterface/Main.html: | |
| * UserInterface/NetworkDataGrid.css: Added. | |
| (.network-timeline-decorations): | |
| (.network-timeline-decorations > .header): | |
| Give the network timeline decorations some specific styles because | |
| JavaScript will have to position the decorations. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype.reset): | |
| (WebInspector.NetworkDataGrid.prototype.update): | |
| (WebInspector.NetworkDataGrid.prototype.updateWidths): | |
| (WebInspector.NetworkDataGrid.prototype._sortChanged): | |
| Update the timeline decorations whenever widths change or content changes. | |
| (WebInspector.NetworkDataGrid.prototype._localizedTimelineHeaderWidth): | |
| (WebInspector.NetworkDataGrid.prototype._updateDecorations): | |
| (WebInspector.NetworkDataGrid.prototype._updateDecorationsPosition): | |
| (WebInspector.NetworkDataGrid.prototype._updateHeaderTimes): | |
| Position the header decorations over the timeline columns, and update the | |
| header times using our current calculator's bounds. | |
| * UserInterface/TimelineDecorations.css: | |
| (.timeline-decorations): | |
| Allow clicking through all decorations, they are simply overlays. | |
| * UserInterface/TimelineDecorations.js: | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| Adjust for a left / right padding in which we won't let labels overflow into. | |
| This can be improved further by packing the labels just into the visible area. | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Make the timeline data grids share a common base class so we don't need | |
| to check for functions before calling them. Only the NetworkDataGrid | |
| has a graph right now and needs extra calls, other others are empty. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._recordingStarted): | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): | |
| (WebInspector.TimelinesContentView.prototype._updateCalculatorBoundsForPendingRecords): | |
| No need to check if the DataGrid implements a function now. | |
| Also call update on the datagrid after we update records. | |
| * UserInterface/TimelineDataGrid.js: Added. | |
| (WebInspector.TimelineDataGrid): | |
| (WebInspector.TimelineDataGrid.prototype.constructor.WebInspector.TimelinesDataGrid.get currentCalculator): | |
| (WebInspector.TimelineDataGrid.prototype.updateCalculatorBoundariesWithRecord): | |
| (WebInspector.TimelineDataGrid.prototype.updateCalculatorBoundariesWithDataGridNode): | |
| (WebInspector.TimelineDataGrid.prototype.reset): | |
| (WebInspector.TimelineDataGrid.prototype.update): | |
| Shared base class interface. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid): | |
| Extend from TimelineDataGrid instead of DataGrid directly. | |
| 2012-03-07 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Refactor the display of timeline headers into a separate file. | |
| This currently handles drawing the header dividers, but will | |
| also manage event markers (DOMContent and onload events). | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/TimelineOverview.css: | |
| * UserInterface/TimelineDecorations.css: Added. | |
| (.timeline-decorations): | |
| (.timeline-decorations > .header): | |
| (.timeline-decorations > .header > .divider): | |
| (.timeline-decorations > .header > .divider:last-child): | |
| (.timeline-decorations > .header > .divider > .label): | |
| (.timeline-decorations > .header > .divider:first-child > .label): | |
| Move timeline-overview header styles to timeline-decorations header styles. | |
| * UserInterface/TimelineDecorations.js: Added. | |
| (WebInspector.TimelineDecorations): | |
| (WebInspector.TimelineDecorations.prototype.constructor.WebInspector.TimelineDecorations.get element): | |
| (WebInspector.TimelineDecorations.prototype.get headerElement): | |
| (WebInspector.TimelineDecorations.prototype.updateHeaderTimes): | |
| Manage the header and dividers. | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview): | |
| (WebInspector.TimelineOverview.prototype.clear): | |
| (WebInspector.TimelineOverview.prototype.update): | |
| (WebInspector.TimelineOverview.prototype.updateLayout): | |
| User the decorations class to draw headers over the timeline. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Install the Web Inspector user interface files in Production builds again. | |
| <rdar://problem/10957655> | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/copy-user-interface-resources.sh: Removed early exit and FIXME comment. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Implement the TextEditor breakpoint delegates in WebInspector.TextResourceContentView. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Populate the breakpoint | |
| map by asking the DebuggerManager for all the breakpoints for this URL. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointInfo): Added. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointAdded): Added. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointRemoved): Added. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointMoved): Added. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBreakpointToggled): Added. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Add the start of WebInspector.DebuggerManager. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebuggerManager.js: Added. | |
| (WebInspector.DebuggerManager): | |
| (WebInspector.DebuggerManager.prototype.get breakpoints): | |
| (WebInspector.DebuggerManager.prototype.breakpointsForURL): | |
| (WebInspector.DebuggerManager.prototype.addBreakpoint): | |
| (WebInspector.DebuggerManager.prototype.removeBreakpoint): | |
| * UserInterface/Main.html: Incldued DebuggerManager.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an instance of WebInspector.DebuggerManager. | |
| 2012-03-07 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.Breakpoint. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Breakpoint.js: Added. | |
| (WebInspector.Breakpoint): | |
| (WebInspector.Breakpoint.prototype.get url): | |
| (WebInspector.Breakpoint.prototype.get lineNumber): | |
| (WebInspector.Breakpoint.prototype.set lineNumber): | |
| (WebInspector.Breakpoint.prototype.get inactive): | |
| (WebInspector.Breakpoint.prototype.set inactive): | |
| (WebInspector.Breakpoint.prototype.get disabled): | |
| (WebInspector.Breakpoint.prototype.set disabled): | |
| * UserInterface/Main.html: Included Breakpoint.js. | |
| 2012-03-06 Timothy Hatcher <timothy@apple.com> | |
| Support dragging breakpoints to move them to a new line or to delete them. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype._gutterElementMouseDown): Add a new breakpoint | |
| if the target does not already have one. Otherwise start tracking the existing | |
| breakpoint for dragging. | |
| (WebInspector.TextEditor.prototype._documentMouseMoved): Added. | |
| (WebInspector.TextEditor.prototype._documentMouseUp): Added. | |
| (WebInspector.TextEditor.prototype._gutterElementMouseUp): Only toggle on mouse up. | |
| 2012-03-06 Timothy Hatcher <timothy@apple.com> | |
| Make clicking on the line gutter create and toggle breakpoints. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Added mouseup event listener. | |
| (WebInspector.TextEditor.prototype._gutterElementMouseUp): Added. Notifies the delegate to add | |
| or toggle a breakpoint when a line number if clicked. | |
| 2012-03-06 Timothy Hatcher <timothy@apple.com> | |
| Add initial support for displaying breakpoints. | |
| Part of: <rdar://problem/10318770&10318777> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/Breakpoint.png: Added. | |
| * UserInterface/Images/Breakpoint@2x.png: Added. | |
| * UserInterface/Images/BreakpointInactive.png: Added. | |
| * UserInterface/Images/BreakpointInactive@2x.png: Added. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter): | |
| (.text-editor > .gutter > .line-number.has-breakpoint): | |
| (.text-editor > .gutter > .line-number.has-breakpoint > .text): | |
| (.text-editor > .gutter > .line-number.has-breakpoint.breakpoint-disabled > .text): | |
| (.text-editor > .gutter > .line-number > .breakpoint): | |
| (.text-editor > .gutter > .line-number.breakpoint-inactive > .breakpoint): | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._updateLineNumbers): Call _addBreakpointElementToLineElementWithInfo | |
| and _removePossibleBreakpointElementFromLineElement depending on the delegate result. | |
| (WebInspector.TextEditor.prototype._addBreakpointElementToLineElementWithInfo): Added. | |
| (WebInspector.TextEditor.prototype._removePossibleBreakpointElementFromLineElement): Added. | |
| 2012-03-06 Mark Rowe <mrowe@apple.com> | |
| <rdar://problem/10873285> Make WebInspector.framework work with staged frameworks | |
| Install WebInspector.framework in /System/Library/StagedFrameworks/Safari when USE_STAGING_INSTALL_PATH is set to YES. | |
| Reviewed by Dan Bernstein. | |
| * Configurations/WebInspectorFramework.xcconfig: | |
| 2012-03-06 Joseph Pecoraro <pecoraro@apple.com> | |
| Share duplicated code to get a display name for a node. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMTreeElementPathComponent.js: | |
| (WebInspector.DOMTreeElementPathComponent): | |
| * UserInterface/DOMUtilities.js: | |
| (WebInspector.displayNameForNode): | |
| * UserInterface/Main.html: | |
| 2012-03-06 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10989550> Inspector should hide docking button when undocked and not allowed to dock (78575) | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.get hidden): | |
| (WebInspector.ButtonNavigationItem.prototype.set hidden): | |
| Allow a button navigation item to be hidden. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.setDockingAvailable): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector.updateDockedState): | |
| (WebInspector.setDockingAvailable): | |
| (WebInspector._updateDockToggleButtonVisibility): | |
| Update the dock toggle button's visibility when it is created, | |
| when the attached state changes, or when availability changes. | |
| 2012-03-05 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.BreakpointSidebarPanel and WebInspector.DebugSidebarPanel. | |
| Start of: <rdar://problem/10318770&10318777> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BreakpointSidebarPanel.js: Added. | |
| (WebInspector.BreakpointSidebarPanel): | |
| * UserInterface/DebugSidebarPanel.js: Added. | |
| (WebInspector.DebugSidebarPanel): | |
| * UserInterface/Main.html: Included BreakpointSidebarPanel.js and DebugSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Use BreakpointSidebarPanel and DebugSidebarPanel classes. | |
| 2012-03-05 Joseph Pecoraro <pecoraro@apple.com> | |
| Follow-up and remove unnecessary outline:none from specific | |
| data-grids now that this style is the default. | |
| * UserInterface/ApplicationCacheFrameContentView.css: | |
| (.content-view.application-cache-frame > .data-grid): | |
| * UserInterface/CookieStorageContentView.css: | |
| (.content-view.cookie-storage > .data-grid): | |
| * UserInterface/DatabaseTableContentView.css: | |
| (.content-view.database-table > .data-grid): | |
| * UserInterface/DetailsSection.css: | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| WebSQL Database inline data grids should not have an outline | |
| when clicked on. The data grid can keep its tabindex, but | |
| just remove the outline when its focused. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Format the Cookie size column using standard size representations. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype._rebuildTable): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10982421> Event Listeners section flashes when switching between nodes | |
| We no longer need to resolve the node, since the Safari frontend | |
| doesn't show an ObjectProperties tree. We already have all the | |
| information we need in the eventListener callback. Removing this | |
| async call removes the flashing. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| We should save state the expanded/collapsed state of different event types. | |
| Just default to having them collapsed and save the state when they are expanded. | |
| Rubber-stamped by Timothy Hatcher. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection): | |
| * UserInterface/EventListenerSection.js: | |
| (WebInspector.EventListenerSection): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Don't linkify EventListeners without a URL. | |
| This can happen for EventListeners added through the Inspector's console. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): | |
| 2012-03-04 Timothy Hatcher <timothy@apple.com> | |
| Hook up the Start Timeline Recording Develop menu items. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.isTimelineProfilingEnabled): Return WebInspector.timelineManager.recording. | |
| (InspectorFrontendAPI.setTimelineProfilingEnabled): Show the Instrument panel and timeline, then start recording. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Only load the last content view if InspectorFrontendAPI didn't show one. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype._mainResourceDidChange): Ignore resource events when there isn't a main frame yet. | |
| (WebInspector.TimelineManager.prototype._resourceWasAdded): Ditto. | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10981986> Back button should be enabled when link causes a switch between "DOM Tree" and "Source Code" | |
| Update the back/forward buttons when the path components change. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Rename WebInspector.domAgent -> WebInspector.domTreeManager. | |
| This code is currently unreachable. | |
| Reviewed by Brian Weinstein and Timothy Hatcher. | |
| * UserInterface/ObjectPropertiesSection.js: | |
| (WebInspector.ObjectPropertyTreeElement.prototype._contextMenuEventFired): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Make node name's in the EventListener section links that jump to | |
| that node. Also, when hovering the node it highlights on the page. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMUtilites.js: Added. | |
| (WebInspector.displayNameForNode): | |
| (WebInspector.linkifyNodeReference): | |
| Copied from OpenSource's DOMPresentationUtils.js, updated for the new | |
| frontend, and remove unused code. | |
| * UserInterface/EventListenerSectionGroup.js: | |
| (WebInspector.EventListenerSectionGroup.prototype._nodeTextOrLink): | |
| Use the DOMUtilities method to linkify the node. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.css: | |
| (.node-link): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Add event listener information to the DOM Node Details Sidebar panel. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype.constructor.WebInspector.DOMNodeDetailsSidebarPanel.refresh): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners.eventListenersCallback): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshEventListeners): | |
| Add a new "Event Listeners" Section and refresh it when the selected node changes. | |
| Each row in this section is an EventListenerSection. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section .details-section > .header): | |
| Style a nested details section to be gray. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection): | |
| Take an extra parameter in the Constructor to avoid saving collapsed states. | |
| EventListener event type sections will always start out collapsed. | |
| * UserInterface/EventListenerSection.js: Added. | |
| (WebInspector.EventListenerSection): | |
| (WebInspector.EventListenerSection.prototype.constructor.WebInspector.EventListenerSection.addListener): | |
| EventListenerSection is a specific event type, and contains a group for each listener. | |
| * UserInterface/EventListenerSectionGroup.js: Added. | |
| (WebInspector.EventListenerSectionGroup): | |
| (WebInspector.EventListenerSectionGroup.prototype.constructor.WebInspector.EventListenerSectionGroup.update.updateWithNodeObject): | |
| (WebInspector.EventListenerSectionGroup.prototype.constructor.WebInspector.EventListenerSectionGroup.update): | |
| (WebInspector.EventListenerSectionGroup.prototype._nodeTextOrLink): | |
| (WebInspector.EventListenerSectionGroup.prototype._type): | |
| (WebInspector.EventListenerSectionGroup.prototype._functionTextOrLink): | |
| Each listener displays a few rows of information about it. Go-to arrow | |
| links are provided to jump to the function. | |
| * UserInterface/EventListenerSectionGroup.css: Added. | |
| (.event-listener-section > .content > .group > .row.simple > .value .go-to-arrow): | |
| (.event-listener-section > .content > .group > .row.simple > .value): | |
| Style the simple row in the section to play nicely with resizing and the go-to arrow. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/Main.html: | |
| Add new strings and files. | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Rename the DOM Node sidebar's Properties object group and make sure | |
| to release it when its no longer needed. There will be a separate | |
| object group for Event Listeners. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Add missing Copyright entires to the pre-built License. | |
| Reviewed by Damian Kaleta. | |
| * Scripts/copy-user-interface-resources.sh: | |
| 2012-03-04 Joseph Pecoraro <pecoraro@apple.com> | |
| Fix outline around previously edited DOM element attribute. | |
| When editing, the tabIndex attribute of the element is set | |
| to 0 and restored to the old value after editing. In most cases | |
| the previous value was unset, which returns -1. When cleaning | |
| up elem.tabIndex = -1 was actually keeping around the tabIndex | |
| attribute and giving the element an outline when clicked once | |
| and receiving :focus. | |
| Instead of restoring the tabIndex to -1, just remove the | |
| tabIndex attribute and avoid its associated focus behavior. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.startEditing.cleanUpAfterEditing): | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Part of <rdar://problem/10981607> CSS and JavaScript profiles need a way to toggle between absolute times and percentages. | |
| The CSS selector profile code had the ability to switch from percentages to time when the | |
| user double clicks an element in the "Total" column. | |
| However, we were accessing a WebInspector setting the wrong way. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView.prototype._mouseDownInDataGrid): Access the WebInspector setting the right way. | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Have ConsoleMessageImpl and ProfileDataGridTree use WebInspector.linkifyURLAsNode instead of | |
| using their own custom code to do the same thing. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): Call WebInspector.linkifyURLAsNode. | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype._linkifyLocation): Ditto. | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Hook up the links in the CSS selector profile view. | |
| Rest of <rdar://problem/10897489> Implement CSS profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorDataGridNode.prototype.createCell): Pass the line number to WebInspector.linkifyURLAsNode. | |
| (WebInspector.CSSSelectorProfileView): Add a click event listener. | |
| (WebInspector.CSSSelectorProfileView.prototype._mouseWasClicked): Call WebInspector.openURL on the clicked link. | |
| * UserInterface/Main.js: | |
| (WebInspector.linkifyURLAsNode): Set the link's lineNumber property to be the passed in line number. | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Make the columns in all DataGrids resizable. | |
| This fixes: | |
| - JavaScript profile views | |
| - CSS selector profile views | |
| - Application cache views. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.updateLayout): | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorProfileView.prototype.updateLayout): | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.prototype.updateLayout): | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Rename some functions to make them more clear that they are for JavaScript. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.addJavaScriptProfile): Renamed from addProfile. | |
| (WebInspector.ProfileManager.prototype.setRecordingJavaScriptProfile): Renamed from setRecordingProfile. | |
| * UserInterface/ProfilerObserver.js: | |
| (WebInspector.ProfilerObserver.prototype.addProfileHeader): Update for naming. | |
| (WebInspector.ProfilerObserver.prototype.setRecordingProfile): Ditto. | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Implement the recording of CSS selector profiles, and have them show up in the inspector and be | |
| selectable. | |
| There are a few loose ends to clean up after this patch. | |
| - Some renames in ProfileManager. | |
| - Make link clicking work in CSS selector profiles. | |
| More of <rdar://problem/10897489> Implement CSS profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Updated localized strings | |
| * UserInterface/CSSSelectorProfileType.js: | |
| (WebInspector.CSSSelectorProfileType.prototype.nextProfileId): Returns the available profile ID. | |
| (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile): Don't call anything in the profiles panel. | |
| (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile): Remove the callback that creates a profile | |
| header. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Change ProfileObject to JavaScriptProfileObject and add a case for CSSSelectorProfileObject. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedOver): Check the CSS selector case. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedDown): Ditto. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphClicked): Ditto. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileTypeWasSelected): Ditto. | |
| * UserInterface/JavaScriptProfileView.js: Change the assert. | |
| * UserInterface/Main.html: Add new files. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager): Create a CSS selector profile type. | |
| (WebInspector.ProfileManager.prototype.constructor.WebInspector.ProfileManager.initialize): Clear the recording CSS | |
| selector profile. | |
| (WebInspector.ProfileManager.prototype.isProfilingCSSSelectors): Returns whether or not we are recording a CSS selector | |
| profile. | |
| (WebInspector.ProfileManager.prototype.startProfilingCSSSelectors): Start recording a CSS selector profile, and create | |
| a WebInspector.CSSSelectorProfileObject, and send an event to tell the instrument sidebar panel about it. | |
| (WebInspector.ProfileManager.prototype.stopProfilingCSSSelectors): Stop recording the CSS selector profile, and in the | |
| callback for when the profile finished, update the information about the CSS selector profile and tell the instrument | |
| sidebar that the profile was updated. | |
| (WebInspector.ProfileManager.prototype.addProfile): Create a JavaScriptProfileObject instead of a ProfileObject. | |
| (WebInspector.ProfileManager.prototype.setRecordingProfile): Ditto. | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Add subclasses of ProfileObject for CSS Selector profile and JavaScript profiles. They are not used anywhere, | |
| but they will be to be able to differentiate between the two types of profiles. | |
| It also gives us a way to store the CSS selector profile data on the CSSSelectorProfileObject. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CSSSelectorProfileObject.js: Added. | |
| (WebInspector.CSSSelectorProfileObject): | |
| (WebInspector.CSSSelectorProfileObject.prototype.constructor.WebInspector.CSSSelectorProfileObject.get data): Returns | |
| the data. | |
| (WebInspector.CSSSelectorProfileObject.prototype.set data): Sets the data. | |
| (WebInspector.CSSSelectorProfileObject.prototype.get totalTime): Returns the total time. | |
| (WebInspector.CSSSelectorProfileObject.prototype.set totalTime): Sets the total time. | |
| * UserInterface/JavaScriptProfileObject.js: Added. | |
| (WebInspector.JavaScriptProfileObject): | |
| * UserInterface/Main.html: Add new files | |
| 2012-03-04 Brian Weinstein <bweinstein@apple.com> | |
| Fix some issues in CSSSelectorProfileView.js to get it running with the new inspector. | |
| This patch changes the superclass from View -> ContentView, removes instances of the percent button, | |
| and changes *styleClass -> classList.*. | |
| More of <rdar://problem/10897489> Implement CSS profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CSSSelectorProfileView.js: | |
| (WebInspector.CSSSelectorDataGridNode.prototype.get data): Switch the format of a setting. | |
| (WebInspector.CSSSelectorDataGridNode.prototype.createCell): Use linkifyURLAsNode instead of | |
| linkifyResourceAsNode (which we don't have). | |
| (WebInspector.CSSSelectorProfileView): Add an assert, change our superclass type, update the | |
| setting syntax, and call updateWidths on the data grid. | |
| (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents): Use classList.contains. | |
| 2012-03-02 Brian Weinstein <bweinstein@apple.com> | |
| Bring in some files from open source. | |
| More of <rdar://problem/10897489> Implement CSS profiling in the new Web Inspector. | |
| Rubber-stamped by Jing Jin. | |
| * UserInterface/CSSSelectorProfileType.js: Added. Moved from CSSSelectorProfileView.js to its own file. | |
| * UserInterface/CSSSelectorProfileView.js: Added. Copied from open source. | |
| 2012-03-02 Brian Weinstein <bweinstein@apple.com> | |
| Turn the glyph that starts profiles in the inspector into a select with two options. | |
| - Start JavaScript Profiling | |
| - Start CSS Profiling | |
| JavaScript profiling uses the same codepath as before, and CSS profiling isn't hooked up | |
| yet, but will be in future patches. | |
| Start of <rdar://problem/10897489> Implement CSS profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Update localized strings. | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .title-bar > .record-glyph): Add some additional rules so | |
| this style works for a select and a div. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Change _recordProfileGlyphElement to a select, and add | |
| options to it. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphMousedDown): Clear any selection | |
| the select might have had, and prevent opening the select if we are stopping a profile. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordProfileGlyphClicked): Return early if we are | |
| ignoring this click. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileTypeWasSelected): Start a JavaScript profile | |
| if that was the user's selection, and add a FIXME for starting a CSS profile. | |
| 2012-03-04 Timothy Hatcher <timothy@apple.com> | |
| Strike out all properties that did not parse correctly. | |
| The broken case is if you use: background: -webkit-linear-gradient(...); | |
| and background: -moz-linear-gradient(...) in the same rule. Before they | |
| would both be shown normal (except for the warning icon on the -moz line), | |
| now the -moz property is also striked out. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Added not-parsed-ok to the | |
| rule that adds text-decoration: line-through to properties. | |
| 2012-03-04 Timothy Hatcher <timothy@apple.com> | |
| Syntax highlight values in the Style details sidebar. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor): Call numberProcessor instead | |
| of directly making text nodes for unknown colors and color values. | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processKeyword): Added. | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processSimpleSyntax): Added. | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Add new processors for strings, numbers, and keywords. | |
| 2012-03-03 Brian Weinstein <bweinstein@apple.com> | |
| <rdar://problem/10977869> Profile Link in Log View doesn't jump to Profile in Instruments View. | |
| Give WebInspector.openURL the ability to open URLs with the webkit-profile scheme. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype.showProfile): Look over the tree elements for one with | |
| a profile with the matching title and type, and show it. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): If the URL has the webkit-profile scheme, call InstrumentSidebarPanel.showProfile. | |
| * UserInterface/ProfileType.js: Add a constant for "webkit-profile". | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Hide the DOM node highlight when the DOM tree content view is hidden. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.hidden): Call WebInspector.domTreeManager.hideDOMNodeHighlight(). | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Reduce flashing in the details sidebar when switching content views. | |
| This makes sure to fire the represented objects did change event immediately after the content | |
| view changes so the sidebar updates at the same time as the content view. This is especially important | |
| if the sidebar is auto showing or hiding. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon): | |
| Use _dispatchCurrentRepresentedObjectsDidChangeEvent instead of a nested function. | |
| (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEvent): Added. | |
| Clears the timeout if there is one pending. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Call _dispatchCurrentRepresentedObjectsDidChangeEvent | |
| instead of _dispatchCurrentRepresentedObjectsDidChangeEventSoon. | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Auto hide the details sidebar when empty if the user closed it when empty. | |
| The details sidebar will show again when switching to a content view that has sidebar panels to show. | |
| If the user shows the sidebar when empty it will not auto hide anymore. If the user hides the sidebar | |
| when it isn't empty it will stay hidden until manually shown. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added setting. | |
| (WebInspector._sidebarCollapsedStateDidChange): Update setting based on collapsed state and sidebar panel count. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Show or hide the details sidebar when the sidebar | |
| panel count changes. | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Add the "Show All" checkbox to the Computed Style section header. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section .properties li): Clean up to better align the text. | |
| (.sidebar > .panel.details.css-style .styles-section.read-only .properties > li): Ditto. | |
| (.sidebar > .panel.details.css-style .styles-section.computed-style .properties .inherited): Fixed to work. | |
| (.sidebar > .panel.details.css-style .details-section.show-all .styles-section.computed-style .properties .inherited): Ditto. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Create the checkbox and label. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._computedStyleShowAllCheckboxValueChanged): Added. Toggle the setting | |
| and show-all class on the computed style section. | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .header:not(.mouse-over-options-element):active::before): Don't show active if the options element is. | |
| (.details-section.collapsed > .header:not(.mouse-over-options-element):active::before): Ditto. | |
| (.details-section > .header > label): Added. Generic support for a label and checkbox. | |
| (.details-section.collapsed > .header > label): Ditto. | |
| (.details-section > .header > label > input[type="checkbox"]): Ditto. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection): Make a title element span so it can be updated separately. Append the options element. | |
| (WebInspector.DetailsSection.prototype.get title): Use the title element. | |
| (WebInspector.DetailsSection.prototype.set title): Ditto. | |
| (WebInspector.DetailsSection.prototype._headerElementClicked): Return early if it is within the options element. | |
| (WebInspector.DetailsSection.prototype._optionsElementMouseDown): Added. Add the mouse-over-options-element class. | |
| (WebInspector.DetailsSection.prototype._optionsElementMouseUp): Added. Remove the mouse-over-options-element class. | |
| 2012-03-03 Brian Weinstein <bweinstein@apple.com> | |
| <rdar://problem/10979339> Links in Log and Profile content views don't take you to the correct line | |
| r41258 added the ability to jump to a certain line number when opening a resource | |
| in the inspector by setting the lineNumber property on the link element that will | |
| be clicked. | |
| Adopt this for JavaScript profiles and the Log content view. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): Set the line number of the link | |
| element. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): Add a mouse listener. | |
| (WebInspector.JavaScriptProfileView.prototype._mouseWasClicked): Call WebInspector.openURL. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype._mouseWasClicked): Get the line number from the link | |
| element and pass that line number to WebInspector.openURL. | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype._linkifyLocation): Set the line number of the | |
| link element. | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Make $0..$9 work in the new Web Inspector's console. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._selectedNodeDidChange): Call ConsoleAgent.addInspectedNode | |
| when the selected DOM node changes. | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| When we need to refresh all of the rows, we need to make a copy of the | |
| children array, because the children array gets resorted as the rows | |
| are updated. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsWithNewBounds): | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Tweak to prevent hiding a few of the rows on either end of the | |
| visible bounds. This makes scrolling feel a little bit nicer. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._updateOffscreenRows): | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Style the collapse-button and divider. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid th.sortable:not(.mouse-over-collapser):active): | |
| (.data-grid th.sortable.sort-ascending:not(.mouse-over-collapser):active, .data-grid th.sortable.sort-descending:not(.mouse-over-collapser):active): | |
| When the collapse-button is moused over, we shouldn't apply the :active | |
| style to the entire table header cell when its clicked, because the | |
| user will be clicking on the collapser-button. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid th.sortable:not(.mouse-over-collapser):active): | |
| (.content-view.timelines > .data-grid th.collapser): | |
| (.content-view.timelines > .data-grid th.collapser > .divider): | |
| (.content-view.timelines > .data-grid th.collapser > .collapser-button): | |
| (.content-view.timelines > .data-grid th.collapser > .collapser-button:active): | |
| (.content-view.timelines > .data-grid th.collapser.collapsed > .collapser-button): | |
| (.content-view.timelines > .data-grid th.collapser.collapsed > .collapser-button:active): | |
| (.content-view.timelines > .data-grid th.sort-descending.collapser > div:first-child): | |
| Style the button to the far right. Adjust the sort indicator | |
| to be the left of the collapse-button and divider. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.generateEmbossedCollapseImages.canvasIdentifier): | |
| (WebInspector.TimelinesContentView.generateEmbossedCollapseImages): | |
| Generate embossed images once for all Timeline DataGrids. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._mouseoverColumnCollapser): | |
| (WebInspector.DataGrid.prototype._mouseoutColumnCollapser): | |
| Add a class to the <th> so that the :active highlight won't take | |
| affect when the user clicks the collapser button, but does when | |
| the user clicks on the test of the header cell. | |
| * UserInterface/ImageUtilities.js: | |
| (generateEmbossedImages._imageLoaded): | |
| Make the Focus state optional, and don't generate it if its not needed. | |
| * UserInterface/Images/LessColumns.pdf: Added. | |
| * UserInterface/Images/MoreColumns.pdf: Added. | |
| Images added for the collapse button. | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Move generating embossed canvas images into ImageUtilities so | |
| that it can be shared with DataGrid in the next part. This turns | |
| all self/this references into parameters. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages): | |
| * UserInterface/ImageUtilities.js: | |
| (generateEmbossedImages._imageLoaded): | |
| (generateEmbossedImages._createEmbossedCanvasImage): | |
| (generateEmbossedImages._drawImageShadow): | |
| (generateEmbossedImages._invertMaskImage): | |
| (generateEmbossedImages._applyImageMask): | |
| (generateEmbossedImages): | |
| * UserInterface/Main.html: | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid th): | |
| When columns were collapsed down to width:0, the <th> content was overflowing. | |
| <td> already had overflow:hidden, so this just adds it to <th>. | |
| (.data-grid th.sort-descending > div:first-child): | |
| (.data-grid th.sort-ascending > div:first-child::after): | |
| (.data-grid th.sort-descending > div:first-child::after): | |
| Now that a <th> may have multiple divs, specify that we want the | |
| sort indicator to show up after the first <div>, before the | |
| divider and collapse-button. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): | |
| (WebInspector.DataGrid.prototype.updateWidths): | |
| Move code into the block that was only used in the block. | |
| (WebInspector.DataGrid.prototype.columnWidthsMap): | |
| (WebInspector.DataGrid.prototype.applyColumnWidthsMap): | |
| A brute force API to get / adjust all column widths. | |
| (WebInspector.DataGrid.prototype._isColumnVisible): | |
| (WebInspector.DataGrid.prototype._showColumn): | |
| (WebInspector.DataGrid.prototype._hideColumn): | |
| (WebInspector.DataGrid.prototype._positionResizers): | |
| Rewrite to actually work. Setting a colgroup as hidden or display:none | |
| was actually ignoring the colgroup alltogether, breaking the normal | |
| colgroup[i] === column[i] relationship. Setting the width to 0 kept | |
| the relationship, and hides the column's contents. | |
| (WebInspector.DataGrid.prototype._clickInHeaderCell): | |
| (WebInspector.NetworkDataGrid.prototype.willToggleColumnGroup): | |
| (WebInspector.NetworkDataGrid.prototype.didToggleColumnGroup): | |
| Handle clicks on the collapser button. Run some optional subclass | |
| methods so state can be saved and so the column widths can be adjusted. | |
| * UserInterface/NetworkDataGrid.js: | |
| (WebInspector.NetworkDataGrid.prototype.willToggleColumnGroup): | |
| (WebInspector.NetworkDataGrid.prototype.didToggleColumnGroup): | |
| Handle toggling the column sizes. When collapsing, keep the "Name" | |
| field the same width that it was. But when expanding, just relayout | |
| back to whatever the original widths were. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| Add rows to a "details" column group and specify a collapser. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid .column-group-details): | |
| Slightly dim the "details" column group. | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| Update offscreen rows after sorting. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid): | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| Sorting the Network Timeline column should sort by resource | |
| response time, falling back to request time. Make this | |
| the default sort for the DataGrid. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get data): | |
| 2012-03-03 Joseph Pecoraro <pecoraro@apple.com> | |
| Fix the Timeline Grid sizes for the RemoteDebugger. It looks | |
| as if this isn't needed anymore and actually displays poorly | |
| on 10.7.3 WebKit. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.css: | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Don't move to editing the next property when pressing return/enter while editing a property value. | |
| Pressing return/enter still moves to the value when you are editing the property name. If you want | |
| to edit the next property, that is what tab is for! | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.editingNameValueKeyDown): Support a move direction of "none". | |
| (WebInspector.StylePropertyTreeElement.prototype.selectElement.editingCommitted): Don't call the moveToNextCallback | |
| if there is no moveDirection or moveDirection is "none". | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Override TreeElement.ondblclick instead of having a separate dblclick listener in StylePropertyTreeElement. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.onattach): Removed dblclick event listener. | |
| (WebInspector.StylePropertyTreeElement.prototype.ondblclick): Renamed from _startEditing. | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Make URLs that go to the main resource of a frame open in the Web Inspector instead of in a new tab. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): Check frame.mainResource.url before calling frame.resourceForURL. | |
| 2012-03-02 Timothy Hatcher <timothy@apple.com> | |
| Fix an error that was showing in the console and prevented revalidation of styled when DOM attributes are removed. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._attributesModified): Renamed from _attributesRemovedOrStyleInvalidated | |
| since _attributesModified is what was registered as the event listener. | |
| * UserInterface/Object.js: | |
| (WebInspector.Object.addEventListener): Assert the event type and listener are not null/undefined/empty. | |
| (WebInspector.Object.removeEventListener): Ditto. | |
| 2012-03-03 Timothy Hatcher <timothy@apple.com> | |
| Use a go-to arrow to link to the location of the style rule in the stylesheet resource. | |
| The text links added a lot of clutter and often collided with the selector in bad ways. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: | |
| (.sidebar > .panel.details.css-style .styles-section .go-to-arrow): Sized to fit the line. Hidden by default. | |
| (.sidebar > .panel.details.css-style .styles-section:hover .go-to-arrow): Reveal on hover of the section. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection.prototype._linkify): Create the go-to arrow instead of a text link. | |
| 2012-03-02 Timothy Hatcher <timothy@apple.com> | |
| Show user agent rules in a separate section called "Base Style Rules". | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Create the Base Style Rules section. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createMatchedRuleGroups): Take an array and | |
| return a modified version of the array instead of fixed modification of the matchedRuleGroups array. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Update the user agent section separately. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode): Don't show an origin for user agent rules, since they are | |
| in their own section now. | |
| 2012-03-02 Timothy Hatcher <timothy@apple.com> | |
| Style the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.css: Added. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createStylePropertiesSection): | |
| Stop passing false for isFirstSection argument. | |
| * UserInterface/ComputedStylePropertiesSection.js: | |
| (WebInspector.ComputedStylePropertiesSection): Update className. | |
| * UserInterface/DetailsSection.css: | |
| * UserInterface/Main.html: Included CSSStyleDetailsSidebarPanel.css. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Remove isFirstSection argument. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Create and append the expand element for the | |
| disclosure triangle use for shorthands. Create an inner element for the swatch for transparent colors. | |
| (WebInspector.StylePropertyTreeElement.prototype.restoreNameElement): Remove "webkit-" class prefix. | |
| (WebInspector.StylePropertyTreeElement.prototype._isNameElement): Ditto. | |
| (WebInspector.StylePropertyTreeElement.prototype._isValueElement): Ditto. Return early if it is the expand element. | |
| (WebInspector.StylePropertyTreeElement.prototype.isEventWithinDisclosureTriangle): Added. | |
| 2012-03-01 Timothy Hatcher <timothy@apple.com> | |
| Show an empty content message in the Issue sidebar when there are no issues. | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Call _updateEmptyContentPlaceholder. | |
| (WebInspector.IssueSidebarPanel.prototype._updateEmptyContentPlaceholder): Added. | |
| (WebInspector.IssueSidebarPanel.prototype._issuesCleared): Call _updateEmptyContentPlaceholder. | |
| (WebInspector.IssueSidebarPanel.prototype._checkForOldResources.delayedWork): Ditto. | |
| 2012-03-01 Timothy Hatcher <timothy@apple.com> | |
| Don't show the same node twice in the navigation bar when the close tag is selected in the DOM tree. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.get selectionPathComponents): Skip close tag tree elements. | |
| 2012-03-01 Timothy Hatcher <timothy@apple.com> | |
| Update the Style details sidebar when stylesheets, the media query result, or the DOM changes. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Added event listeners for the DOM and CSS changes. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.get _userOperationInProgress): Added. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSectionsIfNonUserAction): Added. Call _rebuildSections. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._attributesModified): Added. Call _rebuildSectionsIfNonUserAction. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._attributesRemoved): Added. Ditto. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._styleInvalidated): Added. Ditto. | |
| 2012-03-01 Timothy Hatcher <timothy@apple.com> | |
| Include pseudo elements in the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Go through the pseudo elements. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createStylePropertiesSection): Broken out from | |
| createStylePropertiesSectionGroup. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createStylePropertiesSectionGroup): Only create | |
| the row and group now. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createMatchedRuleGroups): Added. Creates sections | |
| and groups for each pseudo element identifier. | |
| 2012-03-01 Timothy Hatcher <timothy@apple.com> | |
| Update the computed style and overloaded properties when editing a style property. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections.createStylePropertiesSectionGroup): | |
| Add the StylePropertiesSection to the mainPropertySectionMap. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Store direct references to the important | |
| property sections and add them to the mainPropertySections. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshSections): Added. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshSections.computedStyleCallback): Iterate over all the property sections | |
| and build the style rules needed to update overloaded and used properties. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._markUsedProperties): Clean up. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback): Call _refreshSections. | |
| (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted): Remove reference to WebInspector.panels.elements. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype._updatePane): Use _refreshSections. | |
| (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled): Use _parentPane. | |
| (WebInspector.StylePropertyTreeElement.prototype.applyStyleText): Ditto. | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| Fixed localization typo. | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Before we make other improvements at least adjust the timeline graph | |
| sizes to reasonable sizes. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Adopt OpenSource's "offscreen" row hiding for performance. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid tr.offscreen): | |
| (.content-view.timelines > .data-grid tr.offscreen td): | |
| Ensure offscreen table rows still have a height, and hide their contents. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype.updateLayout): | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): | |
| Update offscreen rows when the view resizes, and after we've sorted / added new rows. | |
| (WebInspector.TimelinesContentView.prototype._updateOffscreenRows): | |
| Mark data grid table rows outside the visible bounds as "offscreen". | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.select): | |
| When a user uses keyboard shortcuts and moves up/down to a row that | |
| was offscreen, the selection happens before the node scrolls into view. | |
| In order for its layout to work properly it can't be display none, | |
| so remove the offscreen class preemptively. | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Images/graphLabelCalloutLeft.png: Added. | |
| * UserInterface/Images/graphLabelCalloutLeftWhite.png: Added. | |
| * UserInterface/Images/graphLabelCalloutRight.png: Added. | |
| * UserInterface/Images/graphLabelCalloutRightWhite.png: Added. | |
| * UserInterface/Images/timelineHollowPillBlue.png: Added. | |
| * UserInterface/Images/timelineHollowPillGray.png: Added. | |
| * UserInterface/Images/timelineHollowPillGreen.png: Added. | |
| * UserInterface/Images/timelineHollowPillOrange.png: Added. | |
| * UserInterface/Images/timelineHollowPillPurple.png: Added. | |
| * UserInterface/Images/timelineHollowPillRed.png: Added. | |
| * UserInterface/Images/timelineHollowPillYellow.png: Added. | |
| * UserInterface/Images/timelinePillBlue.png: Added. | |
| * UserInterface/Images/timelinePillGray.png: Added. | |
| * UserInterface/Images/timelinePillGreen.png: Added. | |
| * UserInterface/Images/timelinePillOrange.png: Added. | |
| * UserInterface/Images/timelinePillPurple.png: Added. | |
| * UserInterface/Images/timelinePillRed.png: Added. | |
| * UserInterface/Images/timelinePillWhiteFlat.png: Added. | |
| Open Source images and new white images from Timothy Hatcher. | |
| There will need to be HiDPI versions of these images. | |
| * UserInterface/Main.html: | |
| Added new files. | |
| * UserInterface/Main.html: | |
| * UserInterface/NetworkTimeline.css: Added. | |
| Basic styles copied from Open Source. Minor adjustments for image sizes. | |
| (.data-grid:focus tr.selected .network-graph-bar): | |
| (.data-grid:focus tr.selected .resource-cached .network-graph-bar): | |
| (.data-grid:focus tr.selected .network-graph-bar.waiting): | |
| (.data-grid:focus tr.selected .network-graph-label): | |
| (.data-grid:focus tr.selected .network-graph-label.after): | |
| (.data-grid:focus tr.selected .network-graph-label.before::after): | |
| (.data-grid:focus tr.selected .network-graph-label.after::before): | |
| New frontend styles for the network graph when the data grid row is selected. | |
| This makes the pill, callouts, and text white / blue matching the data grid | |
| selected style. | |
| * UserInterface/NetworkDataGrid.js: Added. | |
| (WebInspector.NetworkDataGrid): | |
| (WebInspector.NetworkDataGrid.prototype.constructor.WebInspector.NetworkDataGrid.get currentCalculator): | |
| (WebInspector.NetworkDataGrid.prototype.updateCalculatorBoundariesWithRecord): | |
| (WebInspector.NetworkDataGrid.prototype.updateCalculatorBoundariesWithDataGridNode): | |
| (WebInspector.NetworkDataGrid.prototype.reset): | |
| NetworkDataGrid has a just a time calculator right now, that adjusts its bounds | |
| based on resource start time, end times, and on-going load times. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode): | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._createGraphElement): | |
| Create and update the network graph elements for the cell content. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.select): | |
| Show the pill labels when the row is selected. Not just onmouseover. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._refreshGraph): | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._refreshLabelPositions): | |
| Use the provided network calculator shared with the other grid nodes to create | |
| the appropriate bar for this resource. | |
| appropriately within the network calculators bounds. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| Timeline DataGrids may have embedded timeline graphs that adjust their bounds | |
| based on the records (start times, max sizes, etc) their content contains. | |
| Calculator objects manage those bounds. If the current data grid has a | |
| calculator we do a few extra actions to ensure nice updates. | |
| (WebInspector.TimelinesContentView.prototype._recordingStarted): | |
| Reset the data grid's calculators. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): | |
| (WebInspector.TimelinesContentView.prototype._updateCalculatorBoundsForPendingRecords): | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsWithNewBounds): | |
| Update the calculator's bounds before updating pending records so that all records | |
| are drawn with the same, most accurate bounds. | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10960903> Include Network timeline graph in the network data grid | |
| Reviewed by Timothy Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: | |
| New strings for the tooltips provided by the graph calculator. | |
| * UserInterface/Main.html: | |
| * UserInterface/NetworkGraphCalculator.js: Added. | |
| (WebInspector.NetworkTimeCalculator): | |
| (WebInspector.NetworkTimeCalculator.prototype.get boundarySpan): | |
| (WebInspector.NetworkTimeCalculator.prototype.reset): | |
| (WebInspector.NetworkTimeCalculator.prototype.computeBarGraphPercentages): | |
| (WebInspector.NetworkTimeCalculator.prototype.computeBarGraphLabels): | |
| (WebInspector.NetworkTimeCalculator.prototype.updateBoundaries): | |
| (WebInspector.NetworkTimeCalculator.prototype.formatValue): | |
| (WebInspector.NetworkTimeCalculator.prototype._lowerBound): | |
| (WebInspector.NetworkTimeCalculator.prototype._upperBound): | |
| (WebInspector.NetworkTransferTimeCalculator): | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._lowerBound): | |
| (WebInspector.NetworkTransferTimeCalculator.prototype._upperBound): | |
| (WebInspector.NetworkTransferDurationCalculator): | |
| (WebInspector.NetworkTransferDurationCalculator.prototype._upperBound): | |
| Port from OpenSource to work with the new frontend's resource objects. | |
| * UserInterface/ResourceTimelineRecord.js: | |
| (WebInspector.ResourceTimelineRecord.prototype.get endTime): | |
| Move "endTime" resource calculation from here ... | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get lastTimestamp): | |
| ... to here as "lastTimestamp". | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| Upgrade .hidden to a common case that does display:none. | |
| This is used throughout the OpenSource frontend to hide elements | |
| and some existing code already uses it and may not be getting | |
| the proper treatment. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TextEditor.css: | |
| * UserInterface/NavigationSidebarPanel.css: | |
| * UserInterface/ApplicationCacheFrameContentView.css: | |
| * UserInterface/Main.css: | |
| (.hidden): | |
| * UserInterface/TextEditor.css: | |
| This removes new front-end occurrences of "hidden". However | |
| it did not remove their JavaScript property. | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| Prevent adding a node to the pending refresh list multiple times. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): | |
| (WebInspector.TimelinesContentView.prototype._scheduleGridNodeForRefresh): | |
| Flag on the DataGridNode as pending a refresh if we've added it | |
| to the refresh list and remove the flag after refreshing. | |
| 2012-03-01 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10952471> Page should reload when pushing <cmd>+R | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.isEventTargetAnEditableField): | |
| Add code, similar to Open Source to detect if the event is inside of | |
| an editable field. Although some TextPrompt's mark their element as | |
| editing, the Console does not. Nor do <input>s. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._keydown): | |
| Add a keydown listener on the document checking for <cmd>+R. | |
| 2012-03-01 Brian Weinstein <bweinstein@apple.com> | |
| Finish up JavaScript profiling in the new inspector. | |
| This patch fixes some loose ends. | |
| - Profiles started by the user now have the title "JavaScript Profile n". | |
| - Profile tree elements now have an icon. | |
| - Selecting "Start Profiling JavaScript" or "Stop Profiling JavaScript" from the Develop menu | |
| now take you to the instrument sidebar panel. | |
| Rest of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Update localized strings. | |
| * UserInterface/Images/Profile.png: Added. | |
| * UserInterface/Images/Profile@2x.png: Added. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.startProfilingJavaScript): Show the instrument sidebar panel. | |
| (InspectorFrontendAPI.stopProfilingJavaScript): Ditto. | |
| * UserInterface/InstrumentIcons.css: Add icons for profile tree elements. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._titleForProfile): Make the title for user generated | |
| profiles "JavaScript Profile n", instead of just "Profile n". | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileWasAdded): Use the class name for the icon. | |
| 2012-03-01 Brian Weinstein <bweinstein@apple.com> | |
| Clear the list of profiles when the page navigates. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Add a listener for when the profile manager says the profiles | |
| were cleared. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilesCleared): Remove the tree elements from the sidebar, | |
| clear the map from profile titles -> tree elements, close all profile content views, and update the empty | |
| content placeholder. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager): Add a listener for when the main resource did change. | |
| (WebInspector.ProfileManager.prototype.constructor.WebInspector.ProfileManager.initialize): Remove an unused variable. | |
| (WebInspector.ProfileManager.prototype._mainResourceDidChange): Call initialize and fire an event saying that profiles | |
| were cleared. | |
| 2012-02-29 Brian Weinstein <bweinstein@apple.com> | |
| Add the ability to start/stop JavaScript profiling from the inspector. | |
| This patch adds a recording glyph to the profiles title bar (which matches the one in the timelines title bar). | |
| The button will start and stop JavaScript profiling. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Update localized strings. | |
| * UserInterface/InstrumentSidebarPanel.css: Make all of these rules work for title bars in the instruments | |
| sidebar panel other than the Timelines title bar. We need these rules for the Profiles title bar as well. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Add a record button and status text next to the profiles sidebar. Also start | |
| listening for when the profile manager starts and stops profiling. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingStarted): Start the text of the profiling status and add | |
| a recording style class to the glyph. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profilingEnded): Clear the text of the profiling status and remove | |
| the recording style class from the glyph. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileGlyphMousedOver): Update the text of the profiling status. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileGlyphMousedOut): Ditto. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileGlyphClicked): Toggle the profiling state. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.constructor.WebInspector.ProfileManager.initialize): Add a flag that represents | |
| whether or not we are currently profiling. | |
| (WebInspector.ProfileManager.prototype.setRecordingProfile): Fire events for when we start or stop profiling. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Remember the last selected details sidebar panel and restore it when that panel becomes available. | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Add event listener for SidebarPanelSelected event. | |
| (WebInspector._detailsSidebarPanelSelected): Added. Remember the identifier of the selected sidebar panel. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Ignore selection changes and restore the selection | |
| when the last selected sidebar panel is reinserted into the sidebar. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Prevent the new Web Inspector resources from installing in production builds since we are | |
| not enabling the Inspector in DP2. | |
| Reviewed by Mark Rowe. | |
| * Scripts/copy-user-interface-resources.sh: Exit early before copying. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Include missing image needed by the Log and Database content views. | |
| <rdar://problem/10952496> "userInputPreviousIcon.png" resource failed to load in Console | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/DatabaseContentView.css: | |
| (.database-user-query::before): Use UserInputPromptPrevious.pdf. | |
| * UserInterface/Images/UserInputPromptPrevious.pdf: Added. | |
| * UserInterface/LogContentView.css: | |
| (.console-user-command::before): Use UserInputPromptPrevious.pdf. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Go through the style rules and mark the used and overloaded properties. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Call _markUsedProperties and | |
| pass the result to WebInspector.ComputedStylePropertiesSection. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._markUsedProperties): Added. Copied from open source's | |
| StylesSidebarPane.js file. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Populate the Style sidebar sections after getting all the style info. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Build a list of style rules | |
| that match the cascade order so we can mark used and overloaded properties. Rebuild the sections. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.getInlineStylesAsync): Merge from open source to work with TOT protocol. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Don't show a selector if selectorText is empty. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Request the style information and store it, then build the sections after the last callback. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Request the style info. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.computedStyleCallback): Store the result. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.matchedStylesCallback): Store the result. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.inlineStylesCallback): Store the results and | |
| call buildSections. Since this was the last async call to cssStyleManager, this will always be the last response. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections.buildSections): Added stub that needs implemented. | |
| 2012-02-29 Timothy Hatcher <timothy@apple.com> | |
| Remove the refresh code in the Style sidebar since it needs reworked to properly update in one step. | |
| The updating needs to be done in one step so the cascade and property priority are taken into account. | |
| The previous way of updating the sections in three async steps was not going to work. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): Call _rebuildSections. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshStyleRules): Removed. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshAttributeStyles): Removed. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshComputedStyle): Removed. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._rebuildSections): Added stub that needs implemented. | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| More work for resource links in the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel): Make the event listener capture since another listener interferes. | |
| (WebInspector.DOMDetailsSidebarPanel.prototype._mouseWasClicked): Pass along the line number. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): Add support for opening to a line number. Use ResourceSidebarPanel which does all the work. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Use _linkify instead of linkifyResourceAsNode. | |
| (WebInspector.StylePropertiesSection.prototype._linkify): Added. | |
| (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode): Use _linkify instead of linkifyResourceAsNode. | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| Copy over Color.js from open source and hook it up to the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): Use WebInspector.Color.Format. | |
| * UserInterface/Color.js: Copied from OpenSource/Source/WebCore/inspector/front-end/Color.js. | |
| * UserInterface/Main.html: Included Color.js. | |
| * UserInterface/StylePropertyTreeElement.js: Use WebInspector.Color.Format. | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| Get style editing working. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._handleKeyDown): Use WebInspector.CSSPropertyPrompt.alteredFloatNumber. | |
| * UserInterface/CSSPropertyPrompt.js: | |
| (WebInspector.CSSPropertyPrompt): | |
| (WebInspector.CSSPropertyPrompt.alteredFloatNumber): Moved from BoxModelDetailsSectionRow. | |
| (WebInspector.CSSPropertyPrompt.alteredHexNumber): Added from Open Source. | |
| (WebInspector.CSSPropertyPrompt.prototype._handleUpOrDownValue): Use alteredFloatNumber and alteredHexNumber on this class. | |
| * UserInterface/EditingSupport.js: | |
| (WebInspector.restoreFocusFromElement): Added from Open Source. | |
| * UserInterface/Main.html: Included CSSPropertyPrompt.js. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype): Create CSSPropertyPrompt correctly. | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| Replace more uses of {add,remove,has}StyleClass with classList.{add,remove,contains}. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BlankStylePropertiesSection.js: | |
| (WebInspector.BlankStylePropertiesSection): | |
| (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback): | |
| (WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted): | |
| (WebInspector.BlankStylePropertiesSection.prototype.makeNormal): | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype.createCell): | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceDoubleClick): | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| Make links work in the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshAttributeStyles): Pass the domNode. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshComputedStyle): Ditto. | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel): Add click event listener. | |
| (WebInspector.DOMDetailsSidebarPanel.prototype._mouseWasClicked): Added. Find the parentFrame for | |
| the inspected DOM node and then call openURL. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL): Remove references to | |
| elements panel and fix up the linifying code to work with the new Inspector code. | |
| 2012-02-29 Brian Weinstein <bweinstein@apple.com> | |
| Group together profiles with the same name into folders when there is more than | |
| one of them. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Update localized strings. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Add a mapping from profile title -> profile tree element (or folder). | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileWasAdded): Add multiple cases for when | |
| we add a profile. If it's the first profile with a given name, add it to the sidebar. If there already | |
| is a folder that represents all profiles with that name, then add the profile to that folder. If there | |
| is already a profile with that same name, create a folder to represent all profiles with that name, | |
| and add both the previous profile and the new profile to that folder. | |
| 2012-02-28 Brian Weinstein <bweinstein@apple.com> | |
| Make console.profile work and show entries in the instrument sidebar. | |
| We now enable profiling when we open the web inspector, instead of when we are just told to create | |
| a profile. This allows console.profile to work when the web inspector is open. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager): Enable the ProfilerAgent when we start the ProfileManager. | |
| (WebInspector.ProfileManager.prototype.startProfilingJavaScript): Call startRecordingProfile. | |
| (WebInspector.ProfileManager.prototype.stopProfilingJavaScript): Don't disable the ProfilerAgent. | |
| (WebInspector.ProfileManager.prototype.addProfile): If we don't have a recording JavaScript profile (which | |
| we wouldn't if addProfile was called from console.profile), then create a new ProfileObject and fire an | |
| event. | |
| 2012-02-28 Timothy Hatcher <timothy@apple.com> | |
| Start showing Computed Style in the Style details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel): Create a Computed Style section. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): Call _refreshComputedStyle. | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype._refreshComputedStyle): Added. Request the computed styles | |
| then make a ComputedStylePropertiesSection. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): Added setting for color format. | |
| (WebInspector.CSSStyleManager.prototype.get preferredColorFormat): Added. | |
| * UserInterface/ComputedStylePropertiesSection.js: | |
| (WebInspector.ComputedStylePropertiesSection): Replace addStyleClass with classList.add. | |
| (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace): Ditto. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection): Make a empty group by default if none are passed in. | |
| * UserInterface/DetailsSectionPropertiesRow.js: Added. | |
| (WebInspector.DetailsSectionPropertiesRow): | |
| (WebInspector.DetailsSectionPropertiesRow.prototype.get propertiesSection): | |
| (WebInspector.DetailsSectionPropertiesRow.prototype.set propertiesSection): | |
| * UserInterface/Main.html: Included DetailsSectionPropertiesRow. | |
| * UserInterface/StylePropertiesSection.js: | |
| (WebInspector.StylePropertiesSection): Removed single-click experiment. | |
| * UserInterface/StylePropertyTreeElement.js: | |
| (WebInspector.StylePropertyTreeElement.prototype.onattach): Removed single-click experiment. | |
| (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Use CSSStyleManager for the color format. | |
| Replaced addStyleClass with classList.add and removeStyleClass with classList.remove. | |
| 2012-02-27 Timothy Hatcher <timothy@apple.com> | |
| Fix some exceptions when running against shipping WebKit. | |
| There are no setters for sortOrder or sortColumnIdentifier. Trying to set them use to throw an exception. | |
| They just are silently ignored in TOT WebKit. The sort info is properly set earlier in the function. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Remove sets for sortOrder and sortColumnIdentifier. | |
| 2012-02-27 Timothy Hatcher <timothy@apple.com> | |
| Hide the appearance and style details sidebars when the node is not an element. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel.prototype.supportsDOMNode): Added. Support only ELEMENT_NODE types. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.supportsDOMNode): Added. Support only ELEMENT_NODE types. | |
| * UserInterface/DOMDetailsSidebarPanel.js: | |
| (WebInspector.DOMDetailsSidebarPanel.prototype..inspect): Call supportsDOMNode before setting domNode. | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.supportsDOMNode): Added. Always return true. | |
| 2012-02-27 Timothy Hatcher <timothy@apple.com> | |
| Move empty message support from DetailsSectionDataGridRow down to DetailsSectionRow. | |
| This allows BoxModelDetailsSectionRow to show a properly styled empty message. It will | |
| also allow other rows in the Style details sidebar to do the same. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/BoxModelDetailsSectionRow.js: | |
| (WebInspector.BoxModelDetailsSectionRow): Pass the emptyMessage to the DetailsSectionRow constructor. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._refresh): Use showEmptyMessage. | |
| (WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics): Use hideEmptyMessage | |
| * UserInterface/DetailsSection.css: | |
| (.details-section > .content > .group > .row.empty): Removed .data-grid from the selector. | |
| * UserInterface/DetailsSectionDataGridRow.js: | |
| (WebInspector.DetailsSectionDataGridRow): Pass the emptyMessage to DetailsSectionRow constructor. | |
| (WebInspector.DetailsSectionDataGridRow.prototype.set dataGrid): Use showEmptyMessage | |
| and hideEmptyMessage. | |
| * UserInterface/DetailsSectionRow.js: | |
| (WebInspector.DetailsSectionRow): Initialize the _emptyMessage. | |
| (WebInspector.DetailsSectionRow.prototype.get emptyMessage): Added. | |
| (WebInspector.DetailsSectionRow.prototype.set emptyMessage): Added. | |
| (WebInspector.DetailsSectionRow.prototype.showEmptyMessage): Added. | |
| (WebInspector.DetailsSectionRow.prototype.hideEmptyMessage): Added. | |
| 2012-02-27 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.CSSStyleDetailsSidebarPanel and make it show up in the details sidebar. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleDetailsSidebarPanel.js: Added. | |
| (WebInspector.CSSStyleDetailsSidebarPanel): | |
| (WebInspector.CSSStyleDetailsSidebarPanel.prototype.refresh): | |
| * UserInterface/Images/NavigationItemCurleyBraces.pdf: Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-02-27 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.CSSObserver and wire it up to the InspectorBackend. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSObserver.js: Added. | |
| (WebInspector.CSSObserver): | |
| (WebInspector.CSSObserver.prototype.mediaQueryResultChanged): | |
| (WebInspector.CSSObserver.prototype.styleSheetChanged): | |
| * UserInterface/Main.html: Included CSSObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Call registerCSSDispatcher with an CSSObserver instance. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Add a sane name for user generated profiles. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype.addProfile): | |
| * UserInterface/ProfileManager.js: | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Create a JavaScriptProfileView when a profile is selected and show it. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * Localizations/en.lproj/localizedStrings.js: Update localized strings. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add a case for ProfileObject. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Add a listener for when items in the content tree outline are selected. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileSelected): Call showContentViewForRepresentedObject on | |
| the selected ProfileObject. | |
| * UserInterface/Main.js: | |
| (WebInspector.sidebarPanelForRepresentedObject): Add a case for ProfileObject. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Hook up Start/Stop Profiling JavaScript in the Develop menu, and make each profile show | |
| up as a sidebar item. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.isProfilingJavaScript): Call into the ProfileManager. | |
| (InspectorFrontendAPI.startProfilingJavaScript): Ditto. | |
| (InspectorFrontendAPI.stopProfilingJavaScript): Ditto. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileWasAdded): Create a tree element for the added profile. | |
| (WebInspector.InstrumentSidebarPanel.prototype._profileWasUpdated): Update the title of the tree element for the | |
| profile that was updated. | |
| * UserInterface/JavaScriptProfileType.js: Change the value of a constant to match data we get back | |
| from the Profiler. | |
| * UserInterface/ProfileManager.js: | |
| (WebInspector.ProfileManager.prototype.constructor.WebInspector.ProfileManager.initialize): Clear the current JavaScript | |
| profile variable. | |
| (WebInspector.ProfileManager.prototype.isProfilingJavaScript): Return whether or not we are profiling JavaScript. | |
| (WebInspector.ProfileManager.prototype.startProfilingJavaScript): Enable the ProfilerAgent, we kick off the profile in | |
| the callback. | |
| (WebInspector.ProfileManager.prototype.stopProfilingJavaScript): Stop recording the current profile and disable the | |
| ProfilerAgent. | |
| (WebInspector.ProfileManager.prototype.addProfile): Update our temporary recording profile to give it the information about | |
| the profile that was added, and fire an event that the profile was u pdated. | |
| (WebInspector.ProfileManager.prototype.setRecordingProfile): Create a temporary profile if needed, and fire an event that | |
| it was created. | |
| (WebInspector.ProfileManager.prototype._profilerWasEnabled): Create a JavaScriptProfileType and start recording. | |
| * UserInterface/ProfilerObserver.js: | |
| (WebInspector.ProfilerObserver.prototype.addProfileHeader): Call ProfileManager.addProfile. | |
| (WebInspector.ProfilerObserver.prototype.setRecordingProfile): Call ProfileManager.setRecordingProfile. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Add a stub ProfilerObserver and hook it up in Main.js. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: Add new file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Set up the ProfilerObserver. | |
| * UserInterface/ProfilerObserver.js: Added. | |
| (WebInspector.ProfilerObserver): | |
| (WebInspector.ProfilerObserver.prototype.constructor.WebInspector.ProfilerObserver.resetProfiles): | |
| (WebInspector.ProfilerObserver.prototype.addProfileHeader): | |
| (WebInspector.ProfilerObserver.prototype.addHeapSnapshotChunk): | |
| (WebInspector.ProfilerObserver.prototype.finishHeapSnapshot): | |
| (WebInspector.ProfilerObserver.prototype.setRecordingProfile): | |
| (WebInspector.ProfilerObserver.prototype.reportHeapSnapshotProgress): | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Add ProfileType and JavaScriptProfileType to Main.html, since later patches will depend on them. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Make ProfileDataGridTree work with the changes to the new inspector. | |
| - Update the way formatted strings are created | |
| - Changes the settings to use the new inspector's syntax | |
| - Remove the depedency on the linkifier | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ProfileDataGridTree.js: | |
| (WebInspector.ProfileDataGridNode.prototype.get data): | |
| (WebInspector.ProfileDataGridNode.prototype.linkifyLocation): | |
| (WebInspector.ProfileDataGridNode.prototype.createCell): | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Bring in some specialized profile data grid components from open source. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/BottomUpProfileDataGridTree.js: Added. Copied from open source. | |
| * UserInterface/ProfileDataGridTree.js: Added. Copied from open source. | |
| * UserInterface/TopDownProfileDataGridTree.js: Added. Copied from open source. | |
| * UserInterface/Main.html: Add new files. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Add rules from open source for the profile view to JavaScriptProfileView.css. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/JavaScriptProfileView.css: Added. Copied rules from open source. | |
| * UserInterface/Main.html: Added file. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Clean up JavaScriptProfileView so it can be used in the new inspector. | |
| This patch: | |
| - Removes the status bar buttons (adding a FIXME to bring back that functionality) | |
| - Makes the class inherit from ContentView instead of just View | |
| - Replaces *styleClass functions with classList.* | |
| - Changes the settings to use the new inspector's syntax | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView): | |
| (WebInspector.JavaScriptProfileView.prototype._changeView): | |
| (WebInspector.JavaScriptProfileView.prototype._percentClicked): | |
| (WebInspector.JavaScriptProfileView.prototype._updatePercentButton): | |
| (WebInspector.JavaScriptProfileView.prototype._focusClicked): | |
| (WebInspector.JavaScriptProfileView.prototype._excludeClicked): | |
| (WebInspector.JavaScriptProfileView.prototype._resetClicked): | |
| (WebInspector.JavaScriptProfileView.prototype._dataGridNodeSelected): | |
| (WebInspector.JavaScriptProfileView.prototype._dataGridNodeDeselected): | |
| (WebInspector.JavaScriptProfileView.prototype._mouseDownInDataGrid): | |
| * UserInterface/Main.html: Add JavaScriptProfileView. | |
| 2012-02-24 Brian Weinstein <bweinstein@apple.com> | |
| Add a ProfileObject class, which just holds some data about profiles (type, title, uid, and whether or not | |
| it is temporary). | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ProfileObject.js: Added. | |
| (WebInspector.ProfileObject): | |
| (WebInspector.ProfileObject.prototype.constructor.WebInspector.ProfileObject.get typeId): | |
| (WebInspector.ProfileObject.prototype.get title): | |
| (WebInspector.ProfileObject.prototype.get uid): | |
| (WebInspector.ProfileObject.prototype.get isTemporary): | |
| 2012-02-22 Brian Weinstein <bweinstein@apple.com> | |
| Create a stub ProfileManager and add an initialize method. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: Add new file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a profile manager. | |
| * UserInterface/ProfileManager.js: Added. | |
| (WebInspector.ProfileManager): | |
| (WebInspector.ProfileManager.prototype.constructor.WebInspector.ProfileManager.initialize): | |
| 2012-02-20 Brian Weinstein <bweinstein@apple.com> | |
| Rename CPUProfile to JavaScriptProfile. | |
| More of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/JavaScriptProfileType.js: | |
| (WebInspector.JavaScriptProfileType): | |
| (WebInspector.JavaScriptProfileType.prototype.createView): | |
| * UserInterface/JavaScriptProfileView.js: | |
| (WebInspector.JavaScriptProfileView.prototype._changeView.set else): | |
| 2012-02-20 Brian Weinstein <bweinstein@apple.com> | |
| Bring in some files from open source. | |
| Start of <rdar://problem/10897473> Implement JavaScript profiling in the new Web Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/JavaScriptProfileType.js: Added. Copied from open source. | |
| * UserInterface/JavaScriptProfileView.js: Added. Copied from open source. | |
| * UserInterface/ProfileType.js: Added. Copied from open source. | |
| 2012-02-26 Timothy Hatcher <timothy@apple.com> | |
| Use insertionIndexForObjectInListSortedByFunction to efficiently build the timeline data grids. | |
| Calling _sortCurrentDataGrid for each update was expensive since it removes all the rows and reinserts them. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype._attach): Fix a bug that prevented inserting the row in the right place. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): Use insertionIndexForObjectInListSortedByFunction | |
| when there is a sortColumnIdentifier. Don't call _sortCurrentDataGrid anymore. | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid): Use _sortComparator. | |
| (WebInspector.TimelinesContentView.prototype._sortComparator): Added. Factored out of _sortCurrentDataGrid. | |
| 2012-02-26 Timothy Hatcher <timothy@apple.com> | |
| Show recoding status in the Instrument sidebar and allow manually starting and stopping recording. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Images/Recording.png: Added. | |
| * UserInterface/Images/Recording@2x.png: Added. | |
| * UserInterface/Images/RecordingHovered.png: Added. | |
| * UserInterface/Images/RecordingHovered@2x.png: Added. | |
| * UserInterface/Images/RecordingStopped.png: Added. | |
| * UserInterface/Images/RecordingStopped@2x.png: Added. | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .title-bar): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph.recording): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph:hover): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph.recording:hover): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph.forced): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-glyph.recording.forced): | |
| (.sidebar > .panel.instrument > .title-bar.timelines > .record-status): | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Create glyph and status elements. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordingStarted): Added. Update glyph and status. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordingStopped): Added. Ditto. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordGlyphMousedOver): Added. Clear forced class. | |
| Update status to reflect what it will be if the button is clicked. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordGlyphMousedOut): Added. Restore current status. | |
| (WebInspector.InstrumentSidebarPanel.prototype._recordGlyphClicked): Added. Add forced class to prevent | |
| the glyph from showing a confusing status after click. | |
| 2012-02-26 Timothy Hatcher <timothy@apple.com> | |
| Draw the overview bar graph at the top of the timeline content view. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview > .timeline > .bar-container): | |
| (.timeline-overview > .timeline .bar): | |
| (.timeline-overview > .timeline .bar.waiting): | |
| (.timeline-overview > .timeline.timeline-record-type-network .bar): | |
| (.timeline-overview > .timeline.timeline-record-type-layout .bar): | |
| (.timeline-overview > .timeline.timeline-record-type-script .bar): | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview): Create a bar container in each timeline. | |
| (WebInspector.TimelineOverview.prototype.update): Call _updateTimelineBars for each type. | |
| (WebInspector.TimelineOverview.prototype._updateTimelineBars): Added. | |
| (WebInspector.TimelineOverview.prototype._updateTimelineBars.computePercentages): Compute percentages | |
| for startTime and endTime. | |
| (WebInspector.TimelineOverview.prototype._updateTimelineBars.computeActivePercentages): Compute percentages | |
| for endTime and the start of activeDuration. | |
| (WebInspector.TimelineOverview.prototype._updateTimelineBars.addBar): Create a bar and append it. | |
| (WebInspector.TimelineOverview.prototype._updateTimelineBars.createBars): Iterate over the records and find | |
| the distribution on the graph. | |
| 2012-02-26 Timothy Hatcher <timothy@apple.com> | |
| Improve auto recording of timeline data so it stops at a reasonable time instead of a fixed 30 seconds. | |
| Recording will now stop when there has been 1 second of dead time after the load event fires. Or after a | |
| maximum of 10 seconds after the load event fires. This works well for a number of large and small sites. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager): Initialize _domContentLoadedEventTime and _loadEventTime. | |
| (WebInspector.TimelineManager.prototype.get mainFrameLoadEventTime): Added. | |
| (WebInspector.TimelineManager.prototype.get mainFrameDOMContentLoadedEventTime): Added. | |
| (WebInspector.TimelineManager.prototype.startRecording): Initialize _domContentLoadedEventTime and _loadEventTime. | |
| (WebInspector.TimelineManager.prototype.stopRecording): Clear _deadTimeTimeout. | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Process the MarkLoad and MarkDOMContent records. | |
| Call _stopAutoRecordingSoon for MarkLoad. | |
| (WebInspector.TimelineManager.prototype._addRecord): Call _resetAutoRecordingDeadTimeTimeout. | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): Removed timeout for stopRecording. | |
| (WebInspector.TimelineManager.prototype._stopAutoRecordingSoon): Added. Start a timeout for the maximum time. Also | |
| call _resetAutoRecordingDeadTimeTimeout to start watching dead time. | |
| (WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout): Added. Reset the dead time timeout. | |
| 2012-02-26 Timothy Hatcher <timothy@apple.com> | |
| Draw the times in the timeline overview header. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .navigation-sidebar-panel-content-tree-outline.timelines .item:not(:first-child):not(.selected)): Reduce divider opacity. | |
| * UserInterface/TimelineOverview.css: | |
| (.timeline-overview > .header): Added. | |
| (.timeline-overview > .header > .divider): Added. | |
| (.timeline-overview > .header > .divider:last-child): Added. | |
| (.timeline-overview > .header > .divider > .label): Added. | |
| (.timeline-overview > .header > .divider:first-child > .label): Added. | |
| (.timeline-overview > .timeline): Added. | |
| (.timeline-overview > .timeline:not(:first-child)): Added. | |
| * UserInterface/TimelineOverview.js: | |
| (WebInspector.TimelineOverview): Create the header element and timeline rows. | |
| (WebInspector.TimelineOverview.prototype.get recordTypes): Added. | |
| (WebInspector.TimelineOverview.prototype.clear): Added. Reset the minimum and maximum boundaries. Call _updateHeaderTimes. | |
| (WebInspector.TimelineOverview.prototype.update): Added. Find the minimum and maximum times. Call _updateHeaderTimes. | |
| (WebInspector.TimelineOverview.prototype.updateLayout): Added. Call _updateHeaderTimes. | |
| (WebInspector.TimelineOverview.prototype._updateHeaderTimes): Added. Update the dividers and labels. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.prototype.updateLayout): Call updateLayout on the timeline overview. | |
| (WebInspector.TimelinesContentView.prototype.timelineOverviewRecordsWithType): Added. | |
| (WebInspector.TimelinesContentView.prototype._addRecordToDataGrid): Don't return early, call _updatePendingRecordsSoon. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsSoon): Return early if not visible. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): Call update on the timeline overview. Fix if statement. | |
| (WebInspector.TimelinesContentView.prototype._scheduleGridNodeForRefresh): Don't return early, call _updatePendingRecordsSoon. | |
| 2012-02-25 Timothy Hatcher <timothy@apple.com> | |
| Add the start of WebInspector.TimelineOverview, the overview graph at the top of the timeline content view. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.html: | |
| * UserInterface/TimelineOverview.css: Added. | |
| (.timeline-overview): | |
| * UserInterface/TimelineOverview.js: Added. | |
| (WebInspector.TimelineOverview): | |
| (WebInspector.TimelineOverview.prototype.get element): | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .timeline-overview): | |
| * UserInterface/TimelinesContentView.js: | |
| 2012-02-25 Timothy Hatcher <timothy@apple.com> | |
| Add a way to jump to resource source code from the Network and Script timeline data grid. | |
| Part of: <rdar://problem/10319553&10319567> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): Remove capture on the click and mousedown events. This allows the go-to | |
| to prevent row selection in the data grid. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImage): Added support for adjusting the alpha by multiplying. | |
| (generateColoredImagesForCSS.generateImage): Pass along the fillColor alpha. | |
| * UserInterface/Main.css: | |
| (.go-to-arrow): Added. | |
| (.go-to-arrow:active): Added. | |
| (:focus .selected .go-to-arrow): Added. | |
| (:focus .selected .go-to-arrow:active): Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.createGoToArrowButton.stopPropagation): Added. | |
| (WebInspector.createGoToArrowButton): Added. Generate the images and button element. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): Append a go-to button to the name column. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._goToResource): Added. Show the resource. | |
| * UserInterface/ScriptTimelineDataGridNode.js: | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): Append a go-to button to the resource column. | |
| (WebInspector.ScriptTimelineDataGridNode.prototype._goToResource): Added. Show the resource and line. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid td .go-to-arrow): Added. Float right, hidden by default | |
| (.content-view.timelines > .data-grid tr:hover .go-to-arrow): Added. Show the button. | |
| 2012-02-25 Timothy Hatcher <timothy@apple.com> | |
| Fix some exceptions that occurred when clicking on a resource in the Issues sidebar. | |
| Reviewed by John Sullivan. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Move _issues and _contentPopulated above the call to the ResourceContentView | |
| constructor since addIssue needs them and ResourceContentView populates the issues. | |
| 2012-02-25 Timothy Hatcher <timothy@apple.com> | |
| Share code for generating disclosure triangles so it can be used in other places. | |
| Reviewed by John Sullivan. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded): Use generateColoredImagesForCSS. | |
| * UserInterface/ImageUtilities.js: | |
| (generateColoredImagesForCSS): Added. Copied from NavigationSidebarPanel and made generic. | |
| (generateColoredImagesForCSS.imageLoaded): Added. | |
| (generateColoredImagesForCSS.generateImage): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded): Use generateColoredImagesForCSS. | |
| 2012-02-24 Timothy Hatcher <timothy@apple.com> | |
| Populate the Script data grid in the timeline content view. | |
| Part of: <rdar://problem/10319567> Implement the Script instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Main.html: Included ScriptTimelineDataGridNode.js and ScriptTimelineRecord.js. | |
| * UserInterface/ScriptTimelineDataGridNode.js: Added. | |
| (WebInspector.ScriptTimelineDataGridNode): | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.get record): | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.get data): | |
| (WebInspector.ScriptTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/ScriptTimelineRecord.js: Added. | |
| (WebInspector.ScriptTimelineRecord): | |
| (WebInspector.ScriptTimelineRecord.EventType.displayName): | |
| (WebInspector.ScriptTimelineRecord.prototype.get eventType): | |
| (WebInspector.ScriptTimelineRecord.prototype.get details): | |
| (WebInspector.ScriptTimelineRecord.prototype.get resource): | |
| (WebInspector.ScriptTimelineRecord.prototype.get lineNumber): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Handle script record types. | |
| (WebInspector.TimelineManager.prototype.eventRecorded): Pass along the parent record to processRecord. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid .resource-column .icon): Updated the selector to work with name-column and resource-column. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid.comparator): Handle WebInspector.Resource values. | |
| (WebInspector.TimelinesContentView.prototype._createDataGridNodeForRecord): Create a ScriptTimelineDataGridNode. | |
| 2012-02-24 Timothy Hatcher <timothy@apple.com> | |
| Populate the Layout & Rendering data grid in timeline content view. | |
| Part of: <rdar://problem/10319571> Implement the Rendering instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/LayoutTimelineDataGridNode.js: Added. | |
| (WebInspector.LayoutTimelineDataGridNode): | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.get record): | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.get data): | |
| (WebInspector.LayoutTimelineDataGridNode.prototype.createCellContent): | |
| * UserInterface/LayoutTimelineRecord.js: Added. | |
| (WebInspector.LayoutTimelineRecord): | |
| (WebInspector.LayoutTimelineRecord.EventType.displayName): | |
| (WebInspector.LayoutTimelineRecord.prototype.get eventType): | |
| (WebInspector.LayoutTimelineRecord.prototype.get x): | |
| (WebInspector.LayoutTimelineRecord.prototype.get y): | |
| (WebInspector.LayoutTimelineRecord.prototype.get width): | |
| (WebInspector.LayoutTimelineRecord.prototype.get height): | |
| (WebInspector.LayoutTimelineRecord.prototype.get area): | |
| * UserInterface/Main.html: Included LayoutTimelineRecord.js and LayoutTimelineDataGridNode.js. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.eventRecorded.processRecord): Create record objects for each type. | |
| (WebInspector.TimelineManager.prototype.eventRecorded): Iterate over the records. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Create columns for the Layout data grid. | |
| (WebInspector.TimelinesContentView.prototype._createDataGridNodeForRecord): Create a LayoutTimelineDataGridNode. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Adjust the output of Number.secondsToString to give higher resolution for < 100ms. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Utilities.js: | |
| (Number.secondsToString): Show more decimal points for < 100ms. Reduce the number of | |
| decimal points in higher resolution mode as well. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Support sorting the data grids in the timeline view. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid th.sort-descending > div): Add some padding so the sort direction arrow does not overlap the text. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Initialize _cached so it can sort properly. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Add event listeners for sorting changes. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): Call _sortCurrentDataGrid. | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid): Added. | |
| (WebInspector.TimelinesContentView.prototype._sortCurrentDataGrid.comparator): Added. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Separate data from presentation in ResourceTimelineDataGridNode to make it easy to sort using the raw data. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.createCell): Make a text node if the content isn't a Node. | |
| (WebInspector.DataGridNode.prototype.createCellContent): Return raw data. The text node is made by the caller. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get data): Return the raw data instead of formatted data. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): Format the data based on the column. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Cause network records to update in batches with any new records being added to reduce flashing. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode): Update event listeners to call _needsRefresh. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get record): Added. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.refresh): Remove timeout check. | |
| (WebInspector.ResourceTimelineDataGridNode.prototype._needsRefresh): Renamed from _refreshSoon. Fire | |
| NeedsRefresh event. | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Add event listener for NeedsRefresh. | |
| (WebInspector.TimelinesContentView.prototype.showTimelineForRecordType): Call _updatePendingRecords. | |
| (WebInspector.TimelinesContentView.prototype.shown): Call _updatePendingRecords. | |
| (WebInspector.TimelinesContentView.prototype._addRecordToDataGrid): Call _updatePendingRecordsSoon. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecordsSoon): Renamed from _addPendingRecordsSoon. | |
| (WebInspector.TimelinesContentView.prototype._updatePendingRecords): Renamed from _addPendingRecords. Also | |
| refresh pending grid nodes. | |
| (WebInspector.TimelinesContentView.prototype._scheduleGridNodeForRefresh): Added. Store the grid node and | |
| call _updatePendingRecordsSoon. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Properly record main resources for all frames in the Network timeline. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager): Change MainFrameDidChange listener to _mainResourceDidChange. | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): Return true if recording started. | |
| (WebInspector.TimelineManager.prototype._mainResourceDidChange): Added. Call _startAutoRecording, | |
| return early if true. Add the main resource as a record if it isn't the auto recording resource. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Always clear records and restart recording when navigating to a new page. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager.prototype.stopRecording): Clear _autoRecordingMainResourceRequestIdentifier. | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): Set _autoRecordingMainResourceRequestIdentifier. | |
| Don't return early if _autoRecordingMainResourceRequestIdentifier. | |
| 2012-02-22 Timothy Hatcher <timothy@apple.com> | |
| Show resource icons and failed loads in the Network data grid. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGridNode.prototype.createCell): Call createCellContent. | |
| (WebInspector.DataGridNode.prototype.createCellContent): Added. Make a text node. | |
| * UserInterface/ResourceTimelineDataGridNode.js: | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.createCellContent): Added. Create a fragment | |
| for the name column with an icon. Add the error class to all cells for failed loads. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid .name-column .icon): Added. | |
| (.content-view.timelines > .data-grid td.error): Added. Color red. | |
| (.content-view.timelines > .data-grid tr.selected td.error): Added. Color white. | |
| 2012-02-21 Timothy Hatcher <timothy@apple.com> | |
| Start populating the Network timeline data grid with resource load information. | |
| Part of: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Main.html: Included ResourceTimelineDataGridNode.js. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Initialize _responseHeaders to avoid an exception. | |
| (WebInspector.Resource.prototype.get statusCode): Added. | |
| (WebInspector.Resource.prototype.get statusText): Added. | |
| * UserInterface/ResourceTimelineDataGridNode.js: Added. | |
| (WebInspector.ResourceTimelineDataGridNode): | |
| (WebInspector.ResourceTimelineDataGridNode.prototype.get data): | |
| * UserInterface/ResourceTimelineRecord.js: | |
| (WebInspector.ResourceTimelineRecord): Add event listener for TimestampsDidChange. | |
| (WebInspector.ResourceTimelineRecord.prototype._dispatchUpdatedEvent): Added. Fire Updated event. | |
| * UserInterface/TimelinesContentView.css: | |
| (.content-view.timelines > .data-grid td:last-child): | |
| (.content-view.timelines > .data-grid td): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Create the Network data grid headers and populate _pendingRecords. | |
| (WebInspector.TimelinesContentView.prototype.showTimelineForRecordType): Call updateWidths | |
| and _addPendingRecords. | |
| (WebInspector.TimelinesContentView.prototype.updateLayout): Added. | |
| (WebInspector.TimelinesContentView.prototype.shown): Call _addPendingRecords. | |
| (WebInspector.TimelinesContentView.prototype._recordingStarted): Added. | |
| (WebInspector.TimelinesContentView.prototype._recordAdded): Added. | |
| (WebInspector.TimelinesContentView.prototype._addRecordToDataGrid): Added. | |
| (WebInspector.TimelinesContentView.prototype._addPendingRecordsSoon): Added. | |
| (WebInspector.TimelinesContentView.prototype._addPendingRecords): Added. | |
| (WebInspector.TimelinesContentView.prototype._createDataGridNodeForRecord): Added. | |
| * UserInterface/Utilities.js: | |
| (Number.secondsToString): Added. Copied from open source. | |
| 2012-02-21 Timothy Hatcher <timothy@apple.com> | |
| Make showing a timeline switch to a different data grid and reflect the selected timeline | |
| in the sidebar and the navigation bar. | |
| Also make the timeline show when reopening the inspector when it was showing last time. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Don't store the tree elements on this. Create a map of tree elements | |
| based on the the record type. | |
| (WebInspector.InstrumentSidebarPanel.prototype.showTimeline): Added. | |
| (WebInspector.InstrumentSidebarPanel.prototype.showTimelineForRecordType): Added. Select the tree element. | |
| (WebInspector.InstrumentSidebarPanel.prototype.cookieForContentView): Added. | |
| (WebInspector.InstrumentSidebarPanel.prototype.showContentViewForCookie): Added. | |
| (WebInspector.InstrumentSidebarPanel.prototype._timelinesTreeElementSelected): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView.createPathComponent): Added. | |
| (WebInspector.TimelinesContentView): Create the path components and test data grids. | |
| (WebInspector.TimelinesContentView.prototype.showTimelineForRecordType): Added. Show the data grid. Update | |
| the path component. Tell the sidebar panel to select the right tree element. | |
| (WebInspector.TimelinesContentView.prototype.get selectionPathComponents): Added. | |
| (WebInspector.TimelinesContentView.prototype.shown): Added. | |
| (WebInspector.TimelinesContentView.prototype._pathComponentSelected): Added. | |
| 2012-02-21 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.TimelineRecord and WebInspector.ResourceTimelineRecord. Start recording Network records on load. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceTimelineRecord.js: Added. | |
| (WebInspector.ResourceTimelineRecord): | |
| (WebInspector.ResourceTimelineRecord.prototype.get resource): | |
| (WebInspector.ResourceTimelineRecord.prototype.get startTime): | |
| (WebInspector.ResourceTimelineRecord.prototype.get endTime): | |
| (WebInspector.ResourceTimelineRecord.prototype.get waitingDuration): | |
| (WebInspector.ResourceTimelineRecord.prototype.get activeDuration): | |
| * UserInterface/TimelineManager.js: | |
| (WebInspector.TimelineManager): Listen for Frame events. Initialize properties. | |
| (WebInspector.TimelineManager.prototype.get recording): Added. | |
| (WebInspector.TimelineManager.prototype.get records): Added. | |
| (WebInspector.TimelineManager.prototype.get recordsWithType): Added. | |
| (WebInspector.TimelineManager.prototype.startRecording): Clear records. Dispatch RecordingStarted event. | |
| (WebInspector.TimelineManager.prototype.stopRecording): Clear timeout. Dispatch RecordingStopped event. | |
| (WebInspector.TimelineManager.prototype._addRecord): Added. Adds record and dispatches RecordAdded event. | |
| (WebInspector.TimelineManager.prototype._startAutoRecording): Added. Start recording and | |
| (WebInspector.TimelineManager.prototype._resourceWasAdded): Added. Create a record. | |
| * UserInterface/TimelineRecord.js: Added. | |
| (WebInspector.TimelineRecord): | |
| (WebInspector.TimelineRecord.prototype.get startTime): | |
| (WebInspector.TimelineRecord.prototype.get endTime): | |
| (WebInspector.TimelineRecord.prototype.get duration): | |
| (WebInspector.TimelineRecord.prototype.get waitingDuration): | |
| (WebInspector.TimelineRecord.prototype.get activeDuration): | |
| 2012-02-20 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.TimelineObserver and WebInspector.TimelineManager. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: Included TimelineManager.js and TimelineObserver.js. | |
| * UserInterface/Main.js: Create an instance of TimelineManager. | |
| (WebInspector.contentLoaded): | |
| * UserInterface/TimelineManager.js: Added. | |
| (WebInspector.TimelineManager): | |
| (WebInspector.TimelineManager.prototype.startRecording): | |
| (WebInspector.TimelineManager.prototype.stopRecording): | |
| (WebInspector.TimelineManager.prototype.eventRecorded): | |
| * UserInterface/TimelineObserver.js: Added. | |
| (WebInspector.TimelineObserver): | |
| (WebInspector.TimelineObserver.prototype.eventRecorded): Call TimelineManager. | |
| 2012-02-20 Timothy Hatcher <timothy@apple.com> | |
| Change the names for the Instrument timelines based on feedback from Adam. | |
| Now: "Network Requests", "Layout & Rendering" and "JavaScript & Events". | |
| Reviewed by Adam Roben. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Update the tree element titles. | |
| 2012-02-19 Timothy Hatcher <timothy@apple.com> | |
| Record network timestamps on WebInspector.Resource along with HTTP response status and sizes. | |
| Needed for: <rdar://problem/10319553> Implement the Network instrument for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Added timestamp parameter. | |
| (WebInspector.FrameResourceManager.prototype.markResourceRequestAsServedFromMemoryCache): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Added timestamp parameter. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveData): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): Added timestamp parameter. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Ditto. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): Pass along timestamp. | |
| (WebInspector.NetworkObserver.prototype.requestServedFromCache): Call markResourceRequestAsServedFromMemoryCache. | |
| (WebInspector.NetworkObserver.prototype.responseReceived): Pass along timestamp. | |
| (WebInspector.NetworkObserver.prototype.dataReceived): Call resourceRequestDidReceiveData. | |
| (WebInspector.NetworkObserver.prototype.loadingFinished): Pass along timestamp. | |
| (WebInspector.NetworkObserver.prototype.loadingFailed): Ditto. | |
| (WebInspector.NetworkObserver.prototype.requestServedFromMemoryCache): Ditto. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added timestamp parameter. | |
| (WebInspector.Resource.prototype.get requestSentTimestamp): Added. | |
| (WebInspector.Resource.prototype.get lastRedirectReceivedTimestamp): Added. | |
| (WebInspector.Resource.prototype.get responseReceivedTimestamp): Added. | |
| (WebInspector.Resource.prototype.get lastDataReceivedTimestamp): Added. | |
| (WebInspector.Resource.prototype.get finishedOrFailedTimestamp): Added. | |
| (WebInspector.Resource.prototype.get duration): Added. | |
| (WebInspector.Resource.prototype.get latency): Added. | |
| (WebInspector.Resource.prototype.get receiveDuration): Added. | |
| (WebInspector.Resource.prototype.get cached): Added. | |
| (WebInspector.Resource.prototype.get size): Added. | |
| (WebInspector.Resource.prototype.get transferSize): Added. | |
| (WebInspector.Resource.prototype.updateForRedirectResponse): Added timestamp parameter. | |
| (WebInspector.Resource.prototype.updateForResponse): Ditto. | |
| (WebInspector.Resource.prototype.increaseSize): Added. | |
| (WebInspector.Resource.prototype.increaseTransferSize): Added. | |
| (WebInspector.Resource.prototype.markAsCached): Added. | |
| (WebInspector.Resource.prototype.markAsFinished): Added timestamp parameter. | |
| (WebInspector.Resource.prototype.markAsFailed): Ditto. | |
| 2012-02-19 Timothy Hatcher <timothy@apple.com> | |
| Show empty content messages for no search results, no recorded profiles and no storage. | |
| Reviewed by Joseph Pecoraro. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/InstrumentSidebarPanel.css: | |
| (.sidebar > .panel.instrument > .empty-content-placeholder): Position with the content. | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Call updateEmptyContentPlaceholder. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .empty-content-placeholder): Use a flex box to center the message. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.updateEmptyContentPlaceholder): Added. Helper. | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForEmptyFilterResults): Set and unset _emptyFilterResults. | |
| * UserInterface/SearchSidebarPanel.css: | |
| (.sidebar > .panel.search > .empty-content-placeholder): Position with the content. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.updateEmptyContentPlaceholderSoon): Added. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.updateEmptyContentPlaceholder): Added. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.resourcesCallback.resourceCallback): Call | |
| updateEmptyContentPlaceholderSoon before any return. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.resourcesCallback): Ditto. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.domCallback.domSearchResults): Ditto. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel.performSearch.domCallback): Ditto. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): Call _updateEmptyContentPlaceholder. | |
| (WebInspector.StorageSidebarPanel.prototype._updateEmptyContentPlaceholder): Added. | |
| (WebInspector.StorageSidebarPanel.prototype._addChild): Call _updateEmptyContentPlaceholder. | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): Call _updateEmptyContentPlaceholder. | |
| 2012-02-19 Timothy Hatcher <timothy@apple.com> | |
| Make DataGrid have a custom style in the timelines content view. | |
| Larger headers with matching gradient to the sidebar panel. Also larger rows with a grey alternating row color. | |
| Part of: <rdar://problem/10319553&10319567&10319571> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: | |
| * UserInterface/TimelinesContentView.css: Added. | |
| (.content-view.timelines > .data-grid): | |
| (.content-view.timelines > .data-grid th): | |
| (.content-view.timelines > .data-grid th:not(:last-child)): | |
| (.content-view.timelines > .data-grid th.sortable:active): | |
| (.content-view.timelines > .data-grid th.sort-descending): | |
| (.content-view.timelines > .data-grid .data-container): | |
| (.content-view.timelines > .data-grid table.data): | |
| (.content-view.timelines > .data-grid td): | |
| (.content-view.timelines > .data-grid td:not(:last-child)): | |
| * UserInterface/TimelinesContentView.js: | |
| (WebInspector.TimelinesContentView): Create a dummy DataGrid for position and style testing. | |
| 2012-02-19 Timothy Hatcher <timothy@apple.com> | |
| Add an empty content view for the Instrument sidebar timelines. | |
| Part of: <rdar://problem/10318728> Implement the Instrument sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Added check for TimelinesObject. | |
| (WebInspector.ContentView.isViewable): Added check for TimelinesObject. | |
| * UserInterface/Images/Stopwatch.png: Added. | |
| * UserInterface/Images/Stopwatch@2x.png: Added. | |
| * UserInterface/InstrumentIcons.css: | |
| (.stopwatch-icon .icon): | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Create the _timelinesElement and an instance of TimelinesObject. | |
| (WebInspector.InstrumentSidebarPanel.prototype.treeElementForRepresentedObject): Added. | |
| (WebInspector.InstrumentSidebarPanel.prototype._timelinesTreeElementSelected): Added. | |
| * UserInterface/Main.html: Included TimelinesContentView.js and TimelinesObject.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.sidebarPanelForRepresentedObject): Added check for TimelinesObject. | |
| * UserInterface/TimelinesContentView.js: Added. | |
| (WebInspector.TimelinesContentView): | |
| * UserInterface/TimelinesObject.js: Added. | |
| (WebInspector.TimelinesObject): | |
| 2012-02-18 Timothy Hatcher <timothy@apple.com> | |
| Start implementing the user interface for the Instrument sidebar panel. | |
| This adds the Loading, Rendering and Scripting tree elements to the top of the sidebar. | |
| Part of: <rdar://problem/10318728> Implement the Instrument sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Images/Colors.png: Added. | |
| * UserInterface/Images/Colors@2x.png: Added. | |
| * UserInterface/Images/Network.png: Added. | |
| * UserInterface/Images/Network@2x.png: Added. | |
| * UserInterface/Images/Script.png: Added. | |
| * UserInterface/Images/Script@2x.png: Added. | |
| * UserInterface/InstrumentIcons.css: Added. | |
| (.network-icon .icon): | |
| (.colors-icon .icon): | |
| (.script-icon .icon): | |
| * UserInterface/InstrumentSidebarPanel.css: Added. | |
| (.sidebar > .panel.instrument > .title-bar): | |
| (.sidebar > .panel.instrument > .title-bar.timelines): | |
| (.sidebar > .panel.instrument > .navigation-sidebar-panel-content-tree-outline.timelines): | |
| (.sidebar > .panel.instrument > .navigation-sidebar-panel-content-tree-outline.timelines .item:not(:first-child):not(.selected)): | |
| (.sidebar > .panel.instrument > .navigation-sidebar-panel-content-tree-outline.timelines .item.selected + .item): | |
| (.sidebar > .panel.instrument > .title-bar.profiles): | |
| (.sidebar > .panel.instrument > .content): | |
| * UserInterface/InstrumentSidebarPanel.js: | |
| (WebInspector.InstrumentSidebarPanel): Create the title abrs and tree outline. | |
| * UserInterface/Main.html: Included InstrumentSidebarPanel.css and InstrumentIcons.css. | |
| 2012-02-18 Timothy Hatcher <timothy@apple.com> | |
| Add support for hiding the disclosure triangle column for sidebar panels that don't have a hierarchy. | |
| The only panel we have like this right now is Log, but Instrument will also use it. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Set HideDisclosureButtonsStyleClassName on the contentTreeOutlineElement. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .item): Remove a margin-top that was pushing all items down | |
| for no good reason. | |
| (.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons > .children): Added. | |
| (.navigation-sidebar-panel-content-tree-outline > .children.hide-disclosure-buttons > .children): Added. | |
| (.navigation-sidebar-panel-content-tree-outline:not(.hide-disclosure-buttons) .item:not(.parent) .icon): Added. | |
| (.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons .item .disclosure-button): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| 2012-02-18 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.InstrumentSidebarPanel. | |
| Part of: <rdar://problem/10318728> Implement the Instrument sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/InstrumentSidebarPanel.js: Added. | |
| (WebInspector.InstrumentSidebarPanel): | |
| * UserInterface/Main.html: Included InstrumentSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an instance of InstrumentSidebarPanel. | |
| 2012-02-20 Jeff Miller <jeffm@apple.com> | |
| Ignore files generated by Xcode inside WebInspectorUI.xcodeproj. | |
| * WebInspectorUI.xcodeproj: Added property svn:ignore. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Fix a couple of issues where settings were not being retrieved or stored. | |
| Reviewed by John Sullivan. | |
| * UserInterface/Setting.js: | |
| (WebInspector.Setting.prototype.get value): Make a copy of the default value so changes to object values don't modify the default value. | |
| Switch a use of _name to _localStorageKey when checking if the key in in localStorage. | |
| (WebInspector.Setting.prototype.set value): Use Object.shallowEqual to better check if objects are equal. | |
| * UserInterface/Utilities.js: | |
| (Object.defineProperty): Return early if a or b are null. null is an object, but Object.keys throws for null. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Fix an exception when using the Web Inspector with empty settings. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable): Null check this._lastSelectedNodePathSetting.value | |
| and this._lastSelectedNodePathSetting.value.path. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Prefix the setting keys in localStorage with "com.apple.WebInspector". | |
| The Web Inspector is loaded from a file url it share localStorage with other local files. | |
| This prevents conflicting with another key. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Setting.js: | |
| (WebInspector.Setting): Set _localStorageKey. | |
| (WebInspector.Setting.prototype.get value): Use _localStorageKey. | |
| (WebInspector.Setting.prototype.set value): Ditto. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Cache setting values locally to avoid JSON and localStorage when the value doesn't change often. | |
| This mimics r107953 from open source with some style cleanup. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Setting.js: | |
| (WebInspector.Setting.prototype.get value): Return this._value if it exists. | |
| (WebInspector.Setting.prototype.set value): Set _value. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Don't store settings in localStorage with values equal to the default value. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Ada Chan. | |
| * UserInterface/Setting.js: | |
| (WebInspector.Setting.prototype.set value): Call removeItem if the value equals the default value. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Remember the last selected DOM node between reloads and Inspector sessions. | |
| Last part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Create the setting. Use _requestRootDOMNode. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable): Try to select the last DOM node | |
| if the URL matches, otherwise just select the body or document element. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable.selectNode): Added. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable.selectLastSelectedNode): Added. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeInvalidated): Don't set rootDOMNode to null. | |
| This minimizes DOM tree churn and better matches what the open source inspector does. | |
| (WebInspector.DOMTreeContentView.prototype._requestRootDOMNode): Added helper. | |
| (WebInspector.DOMTreeContentView.prototype._selectedNodeDidChange): Remember the selected node path. | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater.prototype._reset): Don't set rootDOMNode to null. DOMTreeContentView handles it. | |
| 2012-02-17 Timothy Hatcher <timothy@apple.com> | |
| Minimize the number of times DOMTree's RootDOMNodeInvalidated event fires. | |
| This was causing some DOM tree churn on reload. There is still some churn, but this helps. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree): Only add extra event listeners when not the main frame. | |
| (WebInspector.DOMTree.prototype.get frame): Added for good measure, will be needed soon. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode): Bump the request identifier. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootObjectAvailable): Check the request identifier. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootDOMNodeAvailable): Ditto. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.dispatchCallbacks): Ditto. | |
| (WebInspector.DOMTree.prototype._nodeRemoved): Assert not the main frame. | |
| (WebInspector.DOMTree.prototype._frameMainResourceDidChange): Ditto. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add support to the storage sidebar panel to restore the last content view. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype.cookieForContentView): Added. Create a cookie based on the | |
| type of the represented object. | |
| (WebInspector.StorageSidebarPanel.prototype.showContentViewForCookie.finalizeCookieChecking): Walk all the tree | |
| elements and match them based on type alone. So if you were looking at cookies on one site, and later open the | |
| inspector on another site, the new site's cookies will show. | |
| (WebInspector.StorageSidebarPanel.prototype.showContentViewForCookie): Set a timeout to call finalizeCookieChecking. | |
| (WebInspector.StorageSidebarPanel.prototype._checkTreeElementAgainstPendingContentViewCookie): Added. | |
| (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasAdded): Call _checkTreeElementAgainstPendingContentViewCookie. | |
| (WebInspector.StorageSidebarPanel.prototype._databaseWasAdded): Ditto. | |
| (WebInspector.StorageSidebarPanel.prototype._cookieStorageObjectWasAdded): Ditto. | |
| (WebInspector.StorageSidebarPanel.prototype._frameManifestAdded): Ditto. | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): Style cleanup. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add support to the log sidebar panel to restore the last content view. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype.cookieForContentView): Added. | |
| (WebInspector.LogSidebarPanel.prototype.showContentViewForCookie): Added. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add support to the resource sidebar panel to restore the last content view and select the resource in the sidebar. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.cookieForContentView): Added. Return a cookie with the resource URL. | |
| (WebInspector.ResourceSidebarPanel.prototype.showContentViewForCookie): Added. Find the resource by URL and shows it. | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeForFrame): Cleaned up to match showContentViewForCookie. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Call showContentViewForCookie if _cookieToShowWhenAvailable. | |
| (WebInspector.ResourceSidebarPanel.prototype._frameWasAdded): Remove code that moved into showSourceCodeForFrame. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add support for remembering the last content view so it can potentially be restored next session. | |
| This requires each sidebar to supply a cookie and restore it on load. No sidebars support it yet. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create setting objects for the responsible sidebar panel and cookie. | |
| (WebInspector.sidebarPanelForRepresentedObject): Added. Broke out of contentBrowserTreeElementForRepresentedObject. | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Use sidebarPanelForRepresentedObject. | |
| (WebInspector._updateCurrentContentViewCookie): Added. Asks the responsible sidebar panel for a cookie. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Call _updateCurrentContentViewCookie. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.cookieForContentView): Added stub. | |
| (WebInspector.NavigationSidebarPanel.prototype.showContentViewForCookie): Added. Ditto. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.removeSidebarPanel): Use findSidebarPanel. | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): Ditto. | |
| (WebInspector.Sidebar.prototype.findSidebarPanel): Renamed from _findSidebarPanel. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Remember what view was last used for frames (DOM Tree or Source Code). | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Create a setting. | |
| (WebInspector.FrameContentView.prototype.shown): Use the setting to call _showContentViewForIdentifier. | |
| (WebInspector.FrameContentView.prototype._identifierForContentView): Added. Helper. | |
| (WebInspector.FrameContentView.prototype._showContentViewForIdentifier): Set the setting value. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| If the left sidebar is collapsed, then show the dock buttons in the content browser navigation bar. | |
| Reviewed by Adam Roben. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Make a static dockButtonDividerNavigationItem. Remove inserts for the buttons. | |
| (WebInspector.updateDockedState): Call _updateDockNavigationItems. | |
| (WebInspector._updateDockNavigationItems): Added. Shows the buttons in the right navigation bar based on | |
| docked and left sidebar collapsed state. | |
| (WebInspector._sidebarCollapsedStateDidChange): Call _updateDockNavigationItems. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add a null check in resourceForURL, since the mainFrame can be null if called early enough. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceForURL): Null check mainFrame. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ContentBrowser.Event.CurrentContentViewDidChange. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Fire the CurrentContentViewDidChange event. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Remember the expanded state of frames and folders in the resource sidebar panel. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement): Call _updateExpandedSetting. | |
| (WebInspector.FrameTreeElement.prototype.onexpand): Added. Set the expanded setting value. | |
| (WebInspector.FrameTreeElement.prototype.oncollapse): Added. Set the expanded setting value. | |
| (WebInspector.FrameTreeElement.prototype.removeChildren): Delete the folder tree elements. | |
| (WebInspector.FrameTreeElement.prototype._updateExpandedSetting): Added. | |
| (WebInspector.FrameTreeElement.prototype._mainResourceDidChange): Change the expanded setting since the frame URL has changed. | |
| (WebInspector.FrameTreeElement.prototype._addChildForRepresentedObject): Removed _shouldExpandWhenFirstChildIsAdded code. | |
| (WebInspector.FrameTreeElement.prototype._parentTreeElementForRepresentedObject.createFolderTreeElement): Added. | |
| Sets up the onexpand and oncollapse listeners and creates a expanded setting. | |
| (WebInspector.FrameTreeElement.prototype._parentTreeElementForRepresentedObject): Use createFolderTreeElement. | |
| (WebInspector.FrameTreeElement.prototype._folderTreeElementExpandedStateChange): Added. Set the expanded setting value. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Remove a call to expand, that is handled by FrameTreeElement now. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Support expanding a TreeElement before it has children, so it will expand once the first child is added. | |
| Needed for: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline.prototype.appendChild): Call expand if this is the first child. | |
| (TreeOutline.prototype.insertChild): Ditto. | |
| (TreeElement.prototype.expand): Set the expanded flag even if there are no children. | |
| 2012-02-16 Timothy Hatcher <timothy@apple.com> | |
| Use a hash of the URL instead of the whole URL for remembering the last page searched. | |
| This way the URL isn't cluttering localStorage for size and privacy reasons. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Adam Roben. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.performSearch): Use hash when setting | |
| the _lastSearchedPageSetting.value. | |
| (WebInspector.SearchSidebarPanel.prototype._mainFrameDidChange): Use hash when comparing | |
| with the _lastSearchedPageSetting.value. | |
| * UserInterface/Utilities.js: | |
| (String.prototype.hash): Added. Based on wtf/StringHasher.h (SuperFastHash) algorithm. | |
| 2012-02-15 Timothy Hatcher <timothy@apple.com> | |
| Remember the search term and rerun the search when re-opening the inspector on the same page. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Store the inputElement on the object and add an event | |
| listener for the MainFrameChanged event. Create the setting objects and restore the search term. | |
| (WebInspector.SearchSidebarPanel.prototype.performSearch): Broken out from _searchFieldChanged. | |
| (WebInspector.SearchSidebarPanel.prototype._searchFieldChanged): Call performSearch. | |
| (WebInspector.SearchSidebarPanel.prototype._mainFrameDidChange): Added. Call performSearch | |
| if the frame change is the first and the page is the same as the last time. | |
| 2012-02-15 Timothy Hatcher <timothy@apple.com> | |
| Remember the filter bar filters for each navigation sidebar panel. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FilterBar.js: | |
| (WebInspector.FilterBar.prototype.set filters): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Create the filters setting. | |
| (WebInspector.NavigationSidebarPanel.prototype._updateFilter): Set the filters setting. | |
| 2012-02-15 Timothy Hatcher <timothy@apple.com> | |
| Remember the collapsed state of sections in the details sidebar. | |
| Part of: <rdar://problem/10854042> Remember aspects of the user interface customization | |
| (sidebar state, last view, etc.) | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel): Give identifiers to DetailsSections. | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): Give identifiers to DetailsSections. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): Give identifiers to DetailsSections. | |
| * UserInterface/DetailsSection.js: | |
| (WebInspector.DetailsSection): Create a collapsed setting. Set collapsed to the value of the setting. | |
| (WebInspector.DetailsSection.prototype.get identifier): Added. | |
| (WebInspector.DetailsSection.prototype.set collapsed): Update the collapsed setting. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Give identifiers to DetailsSections. | |
| 2012-02-15 Timothy Hatcher <timothy@apple.com> | |
| Remember the last selected navigation sidebar panel, the sidebar widths and their collapsed state. | |
| <rdar://problem/10854042> Remember aspects of the user interface customization (sidebar state, last view, etc.) | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Listed for SidebarPanelSelected. Use _sidebarWidthDidChange for WidthDidChange. | |
| Create setting objects for last selected navigation sidebar panel, the sidebar widths and their collapsed state. | |
| (WebInspector._sidebarCollapsedStateDidChange): Update the collapsed settings. | |
| (WebInspector._navigationSidebarPanelSelected): Added. Update the last selected navigation sidebar panel setting. | |
| (WebInspector._sidebarWidthDidChange): Added. Update the width settings. Call _contentBrowserSizeDidChange. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set width): Return early if the width is the same. This avoids sending events | |
| if the width didn't change. | |
| (WebInspector.Sidebar.prototype.set collapsed): Return early if the collapsed state is the same. This avoids | |
| sending events if the collapsed state didn't change. | |
| 2012-02-15 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.Setting from Open Source. | |
| <rdar://problem/10854042> Remember aspects of the user interface customization (sidebar state, last view, etc.) | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: Included Setting.js. | |
| * UserInterface/Setting.js: Added. Copied partially from OpenSource/Source/WebCore/inspector/front-end/Settings.js. | |
| (WebInspector.Setting): | |
| (WebInspector.Setting.prototype.get name): | |
| (WebInspector.Setting.prototype.get value): | |
| (WebInspector.Setting.prototype.set value): | |
| 2012-02-14 Brian Weinstein <bweinstein@apple.com> | |
| <rdar://problem/10857306> Consider putting "Show Activity" menu item in Develop menu as mitigation for the old Activity window. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showResources): Make the resources panel the selected panel, and make it not collapsed. | |
| 2012-02-14 Timothy Hatcher <timothy@apple.com> | |
| Tail truncate the search result title so the tooltip does not get too large. | |
| <rdar://problem/10843369> Web Inspector should impose limit on tooltip size to avoid insanely large tooltips | |
| Reviewed by John Sullivan. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): Truncate the title at the end to 50 characters max. | |
| Use \u2026 instead of the actual ellipsis character since UTF8 in source code makes me nervous. | |
| 2012-02-14 Timothy Hatcher <timothy@apple.com> | |
| Show failed resources when first opening the Web Inspector. | |
| This is the Safari side of the Open Source r107715. | |
| Follow up to: <rdar://problem/10843653> | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._createResource): Set the loaderId for good measure. | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): Check for failed and canceled. | |
| 2012-02-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10854052> Cmd-C (and Copy menu item) don't work for selected line in DOM Tree | |
| Allow the current ContentView to handle a "copy" event. | |
| If the ContentView implements handleCopyEvent and there is | |
| no window selection, we send the copy event to the ContentView. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._beforecopy): | |
| (WebInspector._copy): | |
| Add support for passing copy event to a ContentView implementing handleCopyEvent. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.handleCopyEvent): | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.handleCopyEvent): | |
| A DOMTreeContentView allows copying the current selected element. | |
| 2012-02-13 Joseph Pecoraro <pecoraro@apple.com> | |
| <rdar://problem/10854052> Cmd-C (and Copy menu item) don't work for selected line in DOM Tree | |
| Merge r105679 from Open Source's frontend to get the "Copy as HTML" | |
| context menu working. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype.copyNode): | |
| 2012-02-13 Joseph Pecoraro <pecoraro@apple.com> | |
| Make RemoteDebugger work on 10.7.3. | |
| When the front-end is run on an earlier Lion system, such as | |
| SULionDuchess in RemoteDebugger.app, it fails because | |
| Function.prototype.bind is unavailable. Since this appears to be the | |
| only deficiency at the moment, lets define it when its not available. | |
| Reviewed by Timothy Hatcher. | |
| * UserInterface/Main.html: | |
| Move Utilities.js earlier. | |
| * UserInterface/Utilities.js: | |
| Provide a Function.prototype.bind implementation when unavailable. | |
| 2012-02-13 Timothy Hatcher <timothy@apple.com> | |
| Make failed resources show up with red text in the sidebar and show an error message when selected. | |
| <rdar://problem/10843653> Failed resources have no visible distinction in the new Web Inspector | |
| Reviewed by Brian Weinstein. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/FontResourceContentView.js: | |
| (WebInspector.FontResourceContentView.prototype.contentAvailable): Removed FIXME and resource parameter. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.addClassName): Added. | |
| (WebInspector.GeneralTreeElement.prototype.removeClassName): Added. | |
| * UserInterface/ImageResourceContentView.js: | |
| (WebInspector.ImageResourceContentView.prototype.contentAvailable): Removed FIXME and resource parameter. | |
| * UserInterface/Main.css: | |
| (.message-text-view): Reduced the line-height and added some padding. | |
| (.message-text-view.error): Changed the color of red to a ddarker shade. | |
| (.message-text-view.error::before): Added. Show an error icon. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Added issue event listener and issue code from TextResourceContentView. | |
| (WebInspector.ResourceContentView.prototype.contentAvailable): Removed resource parameter. | |
| (WebInspector.ResourceContentView.prototype.addIssue): Added. | |
| (WebInspector.ResourceContentView.prototype.closed): Remove issue event listener. | |
| (WebInspector.ResourceContentView.prototype._contentAvailable): Added. | |
| (WebInspector.ResourceContentView.prototype._issueWasAdded): Added. | |
| * UserInterface/ResourceTreeElement.css: Added. | |
| (.item.resource.failed): Color text red. | |
| (.item.resource.failed .subtitle): Ditto. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement): Add the resource style class. | |
| (WebInspector.ResourceTreeElement.prototype._updateLoadingStatus): Add or remove the failed style class. | |
| (WebInspector.ResourceTreeElement.prototype._typeDidChange): Use addClassName and removeClassName. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Removed the issue code, it is now in ResourceContentView. | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Removed FIXME and resource parameter. | |
| (WebInspector.TextResourceContentView.prototype.addIssue): Show a full error message if there is no content yet. | |
| 2012-02-13 Timothy Hatcher <timothy@apple.com> | |
| Fix a bug where opening the Inspector while loading a page could cause a subresource that just finished loading | |
| to be shown in the Inspector as the main resource. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.initialize): Set _waitingForMainFrameResourceTreePayload. | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Return early if _waitingForMainFrameResourceTreePayload. | |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._addResourceToFrame): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._processMainFrameResourceTreePayload): Delete _waitingForMainFrameResourceTreePayload. | |
| Also clear the _resourceRequestIdentifierMap and _frameIdentifierMap maps. | |
| 2012-02-13 Timothy Hatcher <timothy@apple.com> | |
| Make sure the sidebar tree is ready before showing the source code in response to a Show Page Source user action. | |
| Also reveal and select the frame in the Resource sidebar for which the source was shown. | |
| <rdar://problem/10855004> File path components are missing when using Show Page Source menu item | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showMainResourceForFrame): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeForFrame): | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): Added. A custom implementation is | |
| needed for this since the frames are populated lazily. | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject.getParent): Added. | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject.isAncestor): Added. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Check for _frameIdentifierToShowSourceCodeWhenAvailable | |
| and call showSourceCodeForFrame. | |
| (WebInspector.ResourceSidebarPanel.prototype._frameWasAdded): Return early if the main frame tree element isn't | |
| in the sidebar tree outline yet. | |
| 2012-02-13 Timothy Hatcher <timothy@apple.com> | |
| Remove the "Create RemoteWebInspector.framework symlinks" build phase now that all | |
| clients are off the old framework. | |
| This also fixes a build error seen in the archive builders. | |
| <rdar://problem/10828236> Remove Symlinks for RemoteWebInspector.framework | |
| Rubber-stamped by Joseph Pecoraro. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Removed "Create RemoteWebInspector.framework symlinks". | |
| 2012-02-12 Timothy Hatcher <timothy@apple.com> | |
| Enable localization of the new Web Inspector again. | |
| <rdar://problem/10688721> | |
| Reviewed by John Sullivan. | |
| * Localizations/en.lproj/localizedStrings.js: Updated. | |
| * UserInterface/Main.js: | |
| (WebInspector.UIString): Lookup the string in window.localizedStrings again. | |
| 2012-02-11 Timothy Hatcher <timothy@apple.com> | |
| Minify the CSS and JavaScript resources in Production builds. | |
| <rdar://problem/10408292> Master the new Web Inspector resources into a separate framework | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/cssmin.py: Added. | |
| * Scripts/jsmin.py: Copied from Safari/Reader/jsmin.py. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Call cssmin.py on Main.css and jsmin.py on Main.js. | |
| 2012-02-11 Timothy Hatcher <timothy@apple.com> | |
| Remove console.assert() calls from Productions builds. | |
| <rdar://problem/10408292> Master the new Web Inspector resources into a separate framework | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/remove-console-asserts.pl: Added. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Call remove-console-asserts.pl on the combined Main.js file. | |
| 2012-02-11 Timothy Hatcher <timothy@apple.com> | |
| Combine scripts and stylesheets into single files in Production builds. | |
| <rdar://problem/10408292> Master the new Web Inspector resources into a separate framework | |
| Reviewed by Joseph Pecoraro. | |
| * Scripts/combine-resources.pl: Added. | |
| * Scripts/copy-user-interface-resources.sh: Call combine-resources.pl in Production builds. | |
| * UserInterface/Main.html: Removed a FIXME comment that gets in the way of combine-resources.pl. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Added combine-resources.pl. | |
| 2012-02-11 Timothy Hatcher <timothy@apple.com> | |
| Build the user interface files into the WebInspector framework. | |
| <rdar://problem/10408292> Master the new Web Inspector resources into a separate framework | |
| Reviewed by Joseph Pecoraro. | |
| * Configurations/Base.xcconfig: Added WEBKIT_UMBRELLA_FRAMEWORKS_DIR and WEBCORE_PRIVATE_HEADERS_DIR. | |
| * Configurations/DebugRelease.xcconfig: Added WEBKIT_UMBRELLA_FRAMEWORKS_DIR for engineering builds. | |
| * Scripts/copy-user-interface-resources.sh: Added. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Added UserInterface folder, localizedStrings.js, | |
| Copy User Interface Resources and Copy WebCore Inspector Resources build phases. | |
| 2012-02-11 Timothy Hatcher <timothy@apple.com> | |
| Move Safari/Develop/WebInspector to WebInspector/UserInterface. | |
| <rdar://problem/10408292> Master the new Web Inspector resources into a separate framework | |
| Reviewed by Joseph Pecoraro. | |
| * ChangeLog: Copied over the Safari/ChangeLog entries with changes in Safari/Develop/WebInspector. | |
| * UserInterface: Renamed from Safari/Develop/WebInspector. | |
| 2012-02-10 Timothy Hatcher <timothy@apple.com> | |
| Copy over StylesSidebarPane.js from Open Source and break it up into one class per file. | |
| Part of: <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/BlankStylePropertiesSection.js: Copied from OpenSource/Source/WebCore/inspector/front-end/StylesSidebarPane.js. | |
| * UserInterface/CSSPropertyPrompt.js: Ditto. | |
| * UserInterface/ComputedStylePropertiesSection.js: Ditto. | |
| * UserInterface/StylePropertiesSection.js: Ditto. | |
| * UserInterface/StylePropertyTreeElement.js: Ditto. | |
| 2012-02-10 Timothy Hatcher <timothy@apple.com> | |
| Collapse bread-crumb compoenents in the middle when there ins't enough room to show them all. | |
| This keeps the important ones (the ends) on the screen while hiding the less important middle. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path-component.hidden): Added. | |
| (.hierarchical-path-component.collapsed): Added. | |
| (.hierarchical-path-component.collapsed > .icon): Added. | |
| (.hierarchical-path-component.collapsed > .title): Added. | |
| (.hierarchical-path-component.collapsed > select): Added. | |
| (.hierarchical-path-component > .separator): Added. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent.prototype.get hidden): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set hidden): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.get collapsed): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set collapsed): Added. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): Delete _collapsedComponent. | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout): Loop through the components starting | |
| at the middle and fanning out in each direction to collapse until widthToRemove depleted. | |
| 2012-02-10 Brian Weinstein <bweinstein@apple.com> | |
| Show page and frame source using the new inspector if it is enabled. | |
| When the user selects Show Page Source from the Develop menu or Show Page Source or Show Frame Source | |
| from the context menu, call new WKInspector API if we are using the new inspector. | |
| <rdar://problem/10830076> Show Page Source should open the new Web Inspector to the page source | |
| <rdar://problem/10844831> Show Frame Source should open the new Web Inspector to that frame's source | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showMainResourceForFrame): Call through to the ResourceSidebarPanel. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| (WebInspector.ResourceSidebarPanel.prototype.showSourceCodeForFrame): If we have a Frame object for | |
| the frame ID we were given, find its content view and show the source for it. If there isn't a frame | |
| object yet, store the frame ID for the frame we want to show. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): If we want to show a frame ID when it becomes | |
| available, then return early before showing the main resource. | |
| (WebInspector.ResourceSidebarPanel.prototype._frameWasAdded): If we are waiting to show a frame's source, and it | |
| was just added, then call showSourceCodeForFrame. | |
| 2012-02-09 Timothy Hatcher <timothy@apple.com> | |
| Set a default tooltip for GeneralTreeElements if there isn't a custom one already assigned. | |
| This gives the user a way to read truncated titles for all the sidebar tree elements. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype._updateTitleElements): Build a tool tip based on the | |
| main title and subtitle. | |
| 2012-02-09 Brian Weinstein <bweinstein@apple.com> | |
| Clean up the code to set the titles of application cache manifest and frame tree elements. | |
| This patch moves the responsibility of generating titles and subtitles for the application cache | |
| manifests and frames from their represented objects to the tree elements. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrame.js: Moved code from here... | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: ... to here. | |
| (WebInspector.ApplicationCacheFrameTreeElement): Pass a blank title, it will be populated by updateTitles, and then call updateTitles. | |
| (WebInspector.ApplicationCacheFrameTreeElement.prototype.constructor.WebInspector.ApplicationCacheFrameTreeElement.updateTitles): Set the | |
| mainTitle and the subtitle on the GeneralTreeElement. | |
| * UserInterface/ApplicationCacheManifest.js: Moved code from here... | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: ... to here. | |
| (WebInspector.ApplicationCacheManifestTreeElement): Pass an empty title. StorageTreeElement will populate it when the flattened variable | |
| is set. | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype.constructor.WebInspector.ApplicationCacheManifestTreeElement.get name): Call _generateTitles | |
| if necessary, and then return the name. | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype.get secondaryName): Call _generateTitles if necessary, and then | |
| return the secondary name. | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype._generateTitles): Moved from ApplicationCacheManifest.js. | |
| 2012-02-09 Brian Weinstein <bweinstein@apple.com> | |
| Implement a better titling scheme for application cache manifests and frames. | |
| This patch reworks the titles and subtitles of application cache manifests and frames. | |
| For the manifest, if it is collapsed, it will say: Application Cache - Manifest Name. | |
| If it isn't collapsed (there is a top level "Application Cache" folder), then it will say: Manifest Name - Host Name. | |
| For the frame, the main title will be the last path component of the frame (if it exists), or the host. The subtitle | |
| will be the host, if the host isn't the same as the main title of the frame, or the subtitle of the application cache | |
| manifest's tree element. | |
| Rest of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrame.js: | |
| (WebInspector.ApplicationCacheFrame.prototype.get title): Call _generateTitles, which doesn't return a title anymore. | |
| (WebInspector.ApplicationCacheFrame.prototype.get subtitle): Call _generateTitles and return this._subtitle. | |
| (WebInspector.ApplicationCacheFrame.prototype.clearTitles): Set the subtitle and main title to null, and call _generateTitles. | |
| (WebInspector.ApplicationCacheFrame.prototype._generateTitles): Clean up the code to generate a main title, and generate | |
| a subtitle as well. | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: | |
| (WebInspector.ApplicationCacheFrameTreeElement): Pass the title and the subtitle. | |
| (WebInspector.ApplicationCacheFrameTreeElement.prototype.constructor.WebInspector.ApplicationCacheFrameTreeElement.updateTitles): | |
| Clear the titles on the represented object, and set the mainTitle and subtitle on the tree element to their new values. | |
| * UserInterface/ApplicationCacheManifest.js: | |
| (WebInspector.ApplicationCacheManifest.prototype.get title): Call _generateTitles. | |
| (WebInspector.ApplicationCacheManifest.prototype.get subtitle): Ditto. | |
| (WebInspector.ApplicationCacheManifest.prototype._generateTitles): Clean up the code to generate a main title and also generate | |
| a subtitle. | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype.get secondaryName): Get the represented object's subtitle. | |
| * UserInterface/StorageTreeElement.js: | |
| (WebInspector.StorageTreeElement): Use the flattened setter instead of setting the variable. The setter does a bit more work | |
| that we need to do. | |
| (WebInspector.StorageTreeElement.prototype.set flattened): Add the ability to set a subtitle when we are not flattened. If the | |
| flattening changes, call _updateChildrensTitles. | |
| (WebInspector.StorageTreeElement.prototype._updateChildrensTitles): Call updateTitles for each child that has updateTitles in their | |
| prototype. | |
| 2012-02-09 Brian Weinstein <bweinstein@apple.com> | |
| Have ApplicationCacheFrameContentView listen for when application cache statuses change. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView): Add an event listener. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.closed): Remove an event listener. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._updateStatus): Call through to updateStatus. | |
| 2012-02-09 Brian Weinstein <bweinstein@apple.com> | |
| Remove a bunch of dead code from ApplicationCacheFrameContentView. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView): | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.updateStatus): | |
| 2012-02-09 Brian Weinstein <bweinstein@apple.com> | |
| Add icons for application cache manifest and frame tree elements. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: | |
| (WebInspector.ApplicationCacheFrameTreeElement): Set a class name. | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: | |
| (WebInspector.ApplicationCacheManifestTreeElement): Ditto. | |
| * UserInterface/ApplicationCacheIcons.css: Added. | |
| * UserInterface/Images/ApplicationCache.png: Added. | |
| * UserInterface/Images/ApplicationCache@2x.png: Added. | |
| * UserInterface/Main.html: Add new file. | |
| 2012-02-09 Timothy Hatcher <timothy@apple.com> | |
| Fix a file not found error in the Web Inspector. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/IndeterminateProgressSpinner.css: | |
| (.indeterminate-progress-spinner): Use IndeterminateProgressSpinner1.pdf instead of IndeterminateProgressSpinner.pdf. | |
| 2012-02-09 Timothy Hatcher <timothy@apple.com> | |
| Don't add event listeners in the ContentView "shown" functions. | |
| This was leading to duplicate listeners if the content view was hidden and shown multiple times. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView): Add the event listener here... | |
| (WebInspector.ClusterContentView.prototype.shown): ... instead of here. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Add the event listener here... | |
| (WebInspector.DOMTreeContentView.prototype.shown): ... instead of here. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Add the event listener here. | |
| (WebInspector.ResourceContentView.prototype.shown): Removed. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Add the event listener here... | |
| (WebInspector.TextResourceContentView.prototype.shown): ... instead of here. | |
| (WebInspector.TextResourceContentView.prototype.hidden): Don't remove the event listener here... | |
| (WebInspector.TextResourceContentView.prototype.closed): ... remove it here instead. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Update the details sidebar when the network state or the frame manifest state changes. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh): Call _refreshOnlineRow and _refreshStatusRow. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._networkStateUpdated): Call _refreshOnlineRow. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._frameManifestStatusChanged): If the frame that changed | |
| matches ours, call _refreshStatusRow. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._refreshOnlineRow): Set the text of the online row. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype._refreshStatusRow): Set the text of the status row. | |
| * UserInterface/ApplicationCacheManager.js: | |
| (WebInspector.ApplicationCacheManager.prototype.networkStateUpdated): | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestUpdated): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Make sure we update the status of an existing cache frame in _frameManifestUpdated. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrame.js: | |
| (WebInspector.ApplicationCacheFrame.prototype.set status): Add a setter. | |
| * UserInterface/ApplicationCacheManager.js: | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestUpdated): If we already have an ApplicationCacheFrame, | |
| make sure to set the status when it changes. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Add a status section to the details sidebar that shows the application cache status and whether the user is online | |
| or offline. | |
| This doesn't listen to changes in state while the sidebar is showing yet, but it will in the next patch. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Add the manifest URL and the frame URL that loaded the manifest to the details sidebar. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): Create a start to our structure of groups and rows. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.get applicationCacheFrame): Return the application cache frame. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.set applicationCacheFrame): Set the application cache frame and say | |
| we need a refresh. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh): Set the data in our rows. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Add a basic ApplicationCacheDetailsSidebarPanel, and make it be enabled at the right time. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheDetailsSidebarPanel.js: Added. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel): Call the DetailsSidebarPanel constructor. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.constructor.WebInspector.ApplicationCacheDetailsSidebarPanel.inspect): Determine | |
| if one of the selected objects is an ApplicationCacheFrame. | |
| (WebInspector.ApplicationCacheDetailsSidebarPanel.prototype.refresh): Add a FIXME. | |
| * UserInterface/Main.html: Add a new file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create the ApplicationCacheDetailsSidebarPanel. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Create an ApplicationCacheFrameContentView when an ApplicationCacheFrameTreeElement is selected. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): | |
| (WebInspector.ContentView.isViewable): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Implement some needed functions in ApplicationCacheManager to handle calls from ApplicationCacheObserver and | |
| ApplicationCacheFrameContentView. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheManager.js: | |
| (WebInspector.ApplicationCacheManager): | |
| (WebInspector.ApplicationCacheManager.prototype.networkStateUpdated): Update the online state, and add a FIXME to fire an event. | |
| (WebInspector.ApplicationCacheManager.prototype.get online): | |
| (WebInspector.ApplicationCacheManager.prototype.applicationCacheStatusUpdated): | |
| (WebInspector.ApplicationCacheManager.prototype.requestApplicationCache): | |
| * UserInterface/ApplicationCacheObserver.js: | |
| (WebInspector.ApplicationCacheObserver.prototype.constructor.WebInspector.ApplicationCacheObserver.applicationCacheStatusUpdated): | |
| (WebInspector.ApplicationCacheObserver.prototype.networkStateUpdated): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Implement Number.bytesToString. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Utilities.js: | |
| (Number.string_appeared_here.value): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Make more of ApplicationFrameContentView work. | |
| Add some styling, and make some of the code in ApplicationFrameContentView match our mannerisms. There are a couple | |
| places we ask the ApplicationCacheManager for data. These functions don't exist yet, but they will in the next patch. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrameContentView.css: Added. | |
| (.content-view.application-cache-frame > .data-grid): | |
| (.content-view.application-cache-frame .hidden): | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView): Create our version of an empty view instead of open source's. Ask the application | |
| cache manager for data. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.shown): Use our correct method name. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.hidden): Ditto. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._maybeUpdate): Check this.visible instead of isVisible(). | |
| (WebInspector.ApplicationCacheFrameContentView.prototype.updateStatus): Ditto. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._update): Ask the application cache manager for data. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._updateCallback): Use our functions to hide and show the empty views / datagrids. | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._createDataGrid): Ditto. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Do some clean-up of ApplicationCacheFrameContentView. | |
| Change the argument it takes to a represented object, have it inherit from ContentView, and remove calls to add/removeStyleClass. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrameContentView.js: | |
| (WebInspector.ApplicationCacheFrameContentView): | |
| (WebInspector.ApplicationCacheFrameContentView.prototype._updateCallback): | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Bring in ApplicationCacheItemsView from open source as ApplicationCacheFrameContentView. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrameContentView.js: Added. Copied from open source. | |
| 2012-02-07 Brian Weinstein <bweinstein@apple.com> | |
| Add tree elements for application cache manifests and frames that have an application cache. | |
| When the document adds or removes frames from the application cache, ApplicationCacheManager fires events. The storage sidebar | |
| panel listens for these events and updates the state of the tree elements in the sidebar panel. Currently, we only add | |
| sidebar items, but removing them will be added in a future patch. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheManager.js: | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestUpdated): | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestRemoved): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype._frameManifestAdded): | |
| (WebInspector.StorageSidebarPanel.prototype._frameManifestRemoved): | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| 2012-02-06 Brian Weinstein <bweinstein@apple.com> | |
| Add tree elements for application cache frames and application cache manifests. | |
| They aren't used yet, but will be used by the StorageSidebarPanel in a later patch. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrameTreeElement.js: Added. | |
| (WebInspector.ApplicationCacheFrameTreeElement): Basic tree element subclass with a FIXME for an icon. | |
| * UserInterface/ApplicationCacheManifest.js: | |
| (WebInspector.ApplicationCacheManifest.prototype.get title): Call _generateTitle if we don't already have one. | |
| (WebInspector.ApplicationCacheManifest.prototype._generateTitle): Try and get a title from the manifest URL's last path component, host | |
| or the whole URL. | |
| * UserInterface/ApplicationCacheManifestTreeElement.js: Added. | |
| (WebInspector.ApplicationCacheManifestTreeElement): Inherits from StorageTreeElement. | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype.constructor.WebInspector.ApplicationCacheManifestTreeElement.get name): Get the | |
| represented object's title. | |
| (WebInspector.ApplicationCacheManifestTreeElement.prototype.get categoryName): return Application Cache. | |
| * UserInterface/Main.html: Add new files. | |
| 2012-02-06 Brian Weinstein <bweinstein@apple.com> | |
| Implement the callback functions when we get information about the application cache. We create the necessary | |
| application cache objects now, but don't create tree elements or notify the storage sidebar panel about them | |
| yet. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheManager.js: | |
| (WebInspector.ApplicationCacheManager): Listen for when child frames are removed. | |
| (WebInspector.ApplicationCacheManager.prototype.constructor.WebInspector.ApplicationCacheManager.initialize): Get the | |
| frames with application caches here.. | |
| (WebInspector.ApplicationCacheManager.prototype._mainResourceDidChange): .. Instead of here. | |
| (WebInspector.ApplicationCacheManager.prototype._childFrameWasRemoved): Call _frameManifestRemoved. | |
| (WebInspector.ApplicationCacheManager.prototype._manifestForFrameLoaded): If the frame doesn't have a manifest URL, | |
| call _frameManifestRemoved. | |
| (WebInspector.ApplicationCacheManager.prototype._framesWithManifestsLoaded): Call _frameManifestUpdated for all frames | |
| that have manifests. | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestUpdated): Create a frame manifest object if it is necessary, | |
| and add FIXMEs to fire some events about the application cache state. | |
| (WebInspector.ApplicationCacheManager.prototype._frameManifestRemoved): Remove the manifest object for this frame. | |
| 2012-02-06 Brian Weinstein <bweinstein@apple.com> | |
| Add ApplicationCacheFrame and ApplicationCacheManifest. These are just simple objects that wrap a few properties. | |
| More of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheFrame.js: Added. | |
| (WebInspector.ApplicationCacheFrame): | |
| (WebInspector.ApplicationCacheFrame.prototype.constructor.WebInspector.ApplicationCacheFrame.get frame): | |
| (WebInspector.ApplicationCacheFrame.prototype.get manifest): | |
| (WebInspector.ApplicationCacheFrame.prototype.get status): | |
| * UserInterface/ApplicationCacheManifest.js: Added. | |
| (WebInspector.ApplicationCacheManifest): | |
| (WebInspector.ApplicationCacheManifest.prototype.constructor.WebInspector.ApplicationCacheManifest.get manifestURL): | |
| * UserInterface/Main.html: | |
| 2012-02-06 Brian Weinstein <bweinstein@apple.com> | |
| Add ApplicationCacheManager, and have it listen for when frames navigate, and call some ApplicationCacheAgent | |
| methods to get data from WebCore. | |
| We don't do anything with this data yet, but will in follow-up patches. | |
| Part of <rdar://problem/10642953> Implement Application Cache sidebar items and content views for new web inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ApplicationCacheManager.js: Added. | |
| (WebInspector.ApplicationCacheManager): Initialize the ApplicationCacheAgent, and add a listener for when frames navigate. | |
| (WebInspector.ApplicationCacheManager.prototype.constructor.WebInspector.ApplicationCacheManager.initialize): Clear our (always empty) | |
| list of application cache objects. | |
| (WebInspector.ApplicationCacheManager.prototype._mainResourceDidChange): Get the list of frames with application caches if the main frame | |
| navigated. If it was a subframe, check the status of the application cache for the subframe. | |
| (WebInspector.ApplicationCacheManager.prototype._manifestForFrameLoaded): Stub. | |
| (WebInspector.ApplicationCacheManager.prototype._framesWithManifestsLoaded): Ditto. | |
| * UserInterface/Main.html: Add new file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an ApplicationCacheManager. | |
| 2012-02-06 Timothy Hatcher <timothy@apple.com> | |
| Show the full URL in the tool tip for resources in the Web Inspector. | |
| Part of: <rdar://problem/10259020> Improve Web Inspector's view of per-page resources enough that Activity window can be eliminated | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): Call _updateToolTip. | |
| (WebInspector.ResourceTreeElement.prototype._updateToolTip): Added. | |
| (WebInspector.ResourceTreeElement.prototype._urlDidChange): Call _updateToolTip. | |
| 2012-02-06 Timothy Hatcher <timothy@apple.com> | |
| Make double-click in the Web Inspector Resource sidebar open the resource in a new Safari tab/window. | |
| This is like the Activity window, which we want to replace with the new Web Inspector. | |
| Part of: <rdar://problem/10259020> Improve Web Inspector's view of per-page resources enough that Activity window can be eliminated | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype.ondblclick): Added. | |
| 2012-02-06 Timothy Hatcher <timothy@apple.com> | |
| Fix an error on reload in the Web Inspector where the main resource would not be marked as finished, so the source | |
| would never display and the spinner in the sidebar would never go away. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Only reuse the main resource | |
| or provisional main resource if the loader identifiers match. | |
| 2012-02-06 Timothy Hatcher <timothy@apple.com> | |
| Show a spinner in resource content views while waiting for content to become available. | |
| Part of: <rdar://problem/10259020> Improve Web Inspector's view of per-page resources enough that Activity window can be eliminated | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceContentView.css: Added. | |
| (.content-view.resource > .indeterminate-progress-spinner): | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Append a spinner. | |
| 2012-02-06 Timothy Hatcher <timothy@apple.com> | |
| Show a progress spinner in the Resource sidebar next to resources that are still loading. | |
| Part of: <rdar://problem/10259020> Improve Web Inspector's view of per-page resources enough that Activity window can be eliminated | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement): Initialize status to "". | |
| (WebInspector.GeneralTreeElement.prototype.get status): Added. | |
| (WebInspector.GeneralTreeElement.prototype.set status): Added. | |
| (WebInspector.GeneralTreeElement.prototype.onattach): Call _updateStatusElement. | |
| (WebInspector.GeneralTreeElement.prototype._createElementsIfNeeded): Create the status element. | |
| (WebInspector.GeneralTreeElement.prototype._updateStatusElement): Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner1.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner10.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner11.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner12.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner2.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner3.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner4.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner5.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner6.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner7.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner8.pdf: Added. | |
| * UserInterface/Images/IndeterminateProgressSpinner9.pdf: Added. | |
| * UserInterface/IndeterminateProgressSpinner.css: Added. | |
| * UserInterface/IndeterminateProgressSpinner.js: Added. | |
| (WebInspector.IndeterminateProgressSpinner): | |
| (WebInspector.IndeterminateProgressSpinner.prototype.get element): | |
| * UserInterface/Main.html: | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .item .status): | |
| (.navigation-sidebar-panel-content-tree-outline .item .status:empty): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small .status): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small .status .indeterminate-progress-spinner): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small.two-line .status): | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): Add event listeners and call _updateLoadingStatus. | |
| (WebInspector.ResourceTreeElement.prototype._updateLoadingStatus): Added. Sets status to a spinner when loading. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Use PDFs for the user input prompt and result icons. | |
| Part of: <rdar://problem/10643175> DataGrid and the DOM tree and the Console should be HiDPI compliant | |
| Reviewed by Sam Weinig. | |
| * UserInterface/DatabaseContentView.css: | |
| (.database-query-prompt::before): Use Use UserInputPrompt.pdf. | |
| * UserInterface/Images/UserInputPrompt.pdf: Added. | |
| * UserInterface/Images/UserInputResult.pdf: Added. | |
| * UserInterface/Images/userInputIcon.png: Removed. | |
| * UserInterface/Images/userInputResultIcon.png: Removed. | |
| * UserInterface/LogContentView.css: | |
| (#console-prompt::before): Use UserInputPrompt.pdf. | |
| (.console-user-command-result.console-log-level::before): Use UserInputResult.pdf. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Use PDFs for the error and wrning icons. | |
| Part of: <rdar://problem/10643175> DataGrid and the DOM tree and the Console should be HiDPI compliant | |
| Reviewed by Sam Weinig. | |
| * UserInterface/DatabaseContentView.css: | |
| (.database-query-result.error::before): Use ErrorSmall.pdf. | |
| * UserInterface/Images/ErrorSmall.pdf: Added. | |
| * UserInterface/Images/WarningSmall.pdf: Added. | |
| * UserInterface/Images/errorIcon.png: Removed. | |
| * UserInterface/Images/warningIcon.png: Removed. | |
| * UserInterface/LogContentView.css: | |
| (.console-error-level::before): Use ErrorSmall.pdf. | |
| (.console-warning-level::before): Use WarningSmall.pdf. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Remove unused code and images from the log content view for status bar items and filtering. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/deleteIcon.png: Removed. | |
| * UserInterface/Images/searchSmallBrightBlue.png: Removed. | |
| * UserInterface/LogContentView.css: | |
| (.console-debug-level::before): Use a background color instead of an image. The debug | |
| level is not used by the new Web Inspector. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Removed creation code for status bar items and filtering. | |
| (WebInspector.LogContentView.prototype.evalInInspectedWindow): Pass undefined for the context. | |
| * UserInterface/Section.css: | |
| (.section .properties .delete-button): Removed. | |
| (.section .properties li.hovered .delete-button): Removed. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Update LogContentView to work with the new Web Inspector's ContentView instead of the old View. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.hidden): Renamed from willHide. Call storeScrollPositions. | |
| (WebInspector.LogContentView.prototype.shown): Renamed from willShow. Merged with afterShow. | |
| (WebInspector.LogContentView.prototype.storeScrollPositions): Removed WebInspector.View.prototype call. | |
| (WebInspector.LogContentView.prototype.restoreScrollPositions): Ditto. | |
| (WebInspector.LogContentView.prototype.updateLayout): Renamed from onResize. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Make the "Show Error Console" develop menu item work with the new Web Inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.get currentContentView): Added. | |
| (WebInspector.ContentBrowser.prototype.canGoBack): Use this.currentContentView. | |
| (WebInspector.ContentBrowser.prototype.canGoForward): Ditto. | |
| (WebInspector.ContentBrowser.prototype.goBack): Ditto. | |
| (WebInspector.ContentBrowser.prototype.goForward): Ditto. | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): Ditto. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Ditto. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.showConsole): Call LogSidebarPanel.showCurrentLog. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype.showCurrentLog): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Don't select the main frame | |
| if there is already a content view showing. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange.delayedWork): Ditto. | |
| 2012-02-04 Timothy Hatcher <timothy@apple.com> | |
| Fix an infinite loop when doing "Show Error Console" or any of the Inspector develop menu items. | |
| <rdar://problem/10801359> Hitting Cmd-Opt-C (Develop -> Show Error Console) causes WebProcess | |
| to freak out (100% CPU, GBs of RAM) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/InspectorFrontendAPI.js: | |
| (InspectorFrontendAPI.loadCompleted): Set _loaded before calling dispatch, otherwise dispatch | |
| will keep append commands to _pendingCommands and the for loop will never finish. | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Add the Box Model to the Appearance details sidebar panel. | |
| Last part of: <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: | |
| (WebInspector.AppearanceDetailsSidebarPanel): | |
| (WebInspector.AppearanceDetailsSidebarPanel.prototype._refreshBoxModel): | |
| * UserInterface/BoxModelDetailsSectionRow.css: Added. | |
| * UserInterface/BoxModelDetailsSectionRow.js: Copied from OpenSource/Source/WebCore/inspector/front-end/MetricsSidebarPane.js. | |
| Modified to use DOMTreeManager and CSSStyleManager and other minor renames to work in the new inspector. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.get forcedPseudoClasses): Added stub with FIXME. | |
| * UserInterface/Main.html: Included BoxModelDetailsSectionRow.{css,js}. | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.AppearanceDetailsSidebarPanel, future home for the box-model diagram. | |
| Part of: <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/AppearanceDetailsSidebarPanel.js: Added. | |
| (WebInspector.AppearanceDetailsSidebarPanel): | |
| (WebInspector.AppearanceDetailsSidebarPanel.prototype.refresh): Call _refreshBoxModel. | |
| (WebInspector.AppearanceDetailsSidebarPanel.prototype._refreshBoxModel): | |
| * UserInterface/Main.html: Included AppearanceDetailsSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an instance of AppearanceDetailsSidebarPanel. | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Replace WebInspector.domAgent use with WebInspector.domTreeManager. | |
| Needed for: | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager.prototype.setRuleSelector.callback): | |
| (WebInspector.CSSStyleManager.prototype.addRule.callback): | |
| (WebInspector.CSSStyleManager.prototype._ownerDocumentId): | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Create a singelton WebInspector.CSSStyleManager instance. | |
| Needed for: | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| WebInspector.CSSStyleModel to WebInspector.CSSStyleManager. | |
| Also rename WebInspector.CSSStyleModel.Events to WebInspector.CSSStyleManager.Event | |
| and delete some calls in the CSSStyleManager constructor we don't need. | |
| Needed for: | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSStyleManager.js: | |
| (WebInspector.CSSStyleManager): | |
| (WebInspector.CSSStyleManager.parseRuleArrayPayload): | |
| (WebInspector.CSSStyleManager.prototype.getMatchedStylesAsync): | |
| (WebInspector.CSSStyleManager.prototype.mediaQueryResultChanged): | |
| (WebInspector.CSSStyleManager.prototype._fireStyleSheetChanged.if): | |
| (WebInspector.CSSStyleManager.prototype._fireStyleSheetChanged.mycallback): | |
| (WebInspector.CSSStyleManager.prototype._fireStyleSheetChanged): | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Copy over classes from open source's CSSStyleModel.js. | |
| Needed for: | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CSSMedia.js: Added. | |
| (WebInspector.CSSMedia): | |
| (WebInspector.CSSMedia.parsePayload): | |
| (WebInspector.CSSMedia.parseMediaArrayPayload): | |
| * UserInterface/CSSProperty.js: Added. | |
| (WebInspector.CSSProperty): | |
| (WebInspector.CSSProperty.parsePayload): | |
| (WebInspector.CSSProperty.prototype.get propertyText): | |
| (WebInspector.CSSProperty.prototype.get isLive): | |
| (WebInspector.CSSProperty.prototype.get active): | |
| (WebInspector.CSSProperty.prototype.get styleBased): | |
| (WebInspector.CSSProperty.prototype.get inactive): | |
| (WebInspector.CSSProperty.prototype.get disabled): | |
| (WebInspector.CSSProperty.prototype.setText): | |
| (WebInspector.CSSProperty.prototype.setText.callback): | |
| (WebInspector.CSSProperty.prototype.setValue): | |
| (WebInspector.CSSProperty.prototype.setDisabled.callback): | |
| (WebInspector.CSSProperty.prototype.setDisabled): | |
| * UserInterface/CSSRule.js: Added. | |
| (WebInspector.CSSRule): | |
| (WebInspector.CSSRule.parsePayload): | |
| (WebInspector.CSSRule.prototype.get isUserAgent): | |
| (WebInspector.CSSRule.prototype.get isUser): | |
| (WebInspector.CSSRule.prototype.get isViaInspector): | |
| (WebInspector.CSSRule.prototype.get isRegular): | |
| * UserInterface/CSSStyleDeclaration.js: Added. | |
| (WebInspector.CSSStyleDeclaration): | |
| (WebInspector.CSSStyleDeclaration.buildShorthandValueMap): | |
| (WebInspector.CSSStyleDeclaration.parsePayload): | |
| (WebInspector.CSSStyleDeclaration.parseComputedStylePayload): | |
| (WebInspector.CSSStyleDeclaration.prototype.get allProperties): | |
| (WebInspector.CSSStyleDeclaration.prototype.getLiveProperty): | |
| (WebInspector.CSSStyleDeclaration.prototype.getPropertyValue): | |
| (WebInspector.CSSStyleDeclaration.prototype.getPropertyPriority): | |
| (WebInspector.CSSStyleDeclaration.prototype.getPropertyShorthand): | |
| (WebInspector.CSSStyleDeclaration.prototype.isPropertyImplicit): | |
| (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands): | |
| (WebInspector.CSSStyleDeclaration.prototype.getLonghandProperties): | |
| (WebInspector.CSSStyleDeclaration.prototype.getShorthandValue): | |
| (WebInspector.CSSStyleDeclaration.prototype.getShorthandPriority): | |
| (WebInspector.CSSStyleDeclaration.prototype.propertyAt): | |
| (WebInspector.CSSStyleDeclaration.prototype.pastLastSourcePropertyIndex): | |
| (WebInspector.CSSStyleDeclaration.prototype.newBlankProperty): | |
| (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt): | |
| (WebInspector.CSSStyleDeclaration.prototype.appendProperty): | |
| * UserInterface/CSSStyleManager.js: Added. | |
| (WebInspector.CSSStyleModel): | |
| (WebInspector.CSSStyleModel.parseRuleArrayPayload): | |
| (WebInspector.CSSStyleModel.prototype.getMatchedStylesAsync): | |
| (WebInspector.CSSStyleModel.prototype.getComputedStyleAsync): | |
| (WebInspector.CSSStyleModel.prototype.getInlineStylesAsync): | |
| (WebInspector.CSSStyleModel.prototype.setRuleSelector): | |
| (WebInspector.CSSStyleModel.prototype.setRuleSelector.callback): | |
| (WebInspector.CSSStyleModel.prototype.addRule): | |
| (WebInspector.CSSStyleModel.prototype.addRule.callback): | |
| (WebInspector.CSSStyleModel.prototype.mediaQueryResultChanged): | |
| (WebInspector.CSSStyleModel.prototype._ownerDocumentId): | |
| (WebInspector.CSSStyleModel.prototype._fireStyleSheetChanged.if): | |
| (WebInspector.CSSStyleModel.prototype._fireStyleSheetChanged.mycallback): | |
| (WebInspector.CSSStyleModel.prototype._fireStyleSheetChanged): | |
| (WebInspector.CSSStyleModel.prototype.setStyleSheetText): | |
| * UserInterface/CSSStyleSheet.js: Added. | |
| (WebInspector.CSSStyleSheet): | |
| (WebInspector.CSSStyleSheet.createForId): | |
| (WebInspector.CSSStyleSheet.prototype.getText): | |
| (WebInspector.CSSStyleSheet.prototype.setText): | |
| * UserInterface/Main.html: | |
| 2012-02-02 Timothy Hatcher <timothy@apple.com> | |
| Fix asserts in the Web Inspector when loading a loopinsight.com article. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.constructor.WebInspector.Frame.initialize): Don't disassociate from the | |
| old main resource if it didn't change. | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): Ditto. | |
| 2012-02-01 Timothy Hatcher <timothy@apple.com> | |
| Fix issue where log views would draw over the previous log view on reload. | |
| This fixes a bunch of asserts that ContentViewContainer was spewing. | |
| <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViewsOfPrototype): Decrement the | |
| currentIndex when it is greater than or equal to i. | |
| 2012-01-31 Brian Weinstein <bweinstein@apple.com> | |
| Add DatabaseContentView.{js|css}. These were taken from open source, with a few modifications. | |
| Rest of <rdar://problem/10684679> Implement a database query view for the new Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseContentView.css: Added. Copied rules from open source. | |
| * UserInterface/DatabaseContentView.js: Added. Copied from open source. | |
| * UserInterface/Main.html: Added new files. | |
| 2012-01-31 Brian Weinstein <bweinstein@apple.com> | |
| Stub the boilerplate that is needed to hook up DatabaseContentView. | |
| DatabaseContentView doesn't exist yet, but when it does, a new DatabaseContentView will be | |
| created when a DatabaseTreeElement is selected. | |
| Work towards <rdar://problem/10684679> Implement a database query view for the new Inspector. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add a new case for DatabaseContentView. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: Ditto. | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): Ditto. | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): Ditto. | |
| 2012-01-31 Timothy Hatcher <timothy@apple.com> | |
| Generate friendlier titles for the current log and previous logs in the Log sidebar. | |
| Part of: <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): Set the previous current tree element title | |
| to "Previous Log %d". | |
| (WebInspector.LogSidebarPanel.prototype._activeTreeElement): Added. | |
| (WebInspector.LogSidebarPanel.prototype._activeLogContentView): Use _activeTreeElement(). | |
| * UserInterface/LogTreeElement.js: | |
| (WebInspector.LogTreeElement): Set the main title to "Current Log" and the subtitle to the time. | |
| 2012-01-31 Timothy Hatcher <timothy@apple.com> | |
| Add an icon for logs in the Web Inspector Log sidebar. | |
| Part of: <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Images/Log.png: Added. | |
| * UserInterface/Images/Log@2x.png: Added. | |
| * UserInterface/LogIcon.css: Added. | |
| * UserInterface/LogObject.js: | |
| (WebInspector.LogObject): Added startDate parameter and set _startDate. | |
| (WebInspector.LogObject.prototype.get startDate): Added. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): | |
| * UserInterface/LogTreeElement.js: Added. | |
| (WebInspector.LogTreeElement): | |
| (WebInspector.LogTreeElement.prototype.get logObject): | |
| * UserInterface/Main.html: Included LogTreeElement.js and LogIcon.css. | |
| 2012-01-30 Timothy Hatcher <timothy@apple.com> | |
| Fix disclosure triangles in the Log content view after they broke in r40433. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Section.css: | |
| (.section): Added. Moved position: relative here. | |
| (.section .header): Removed position: relative from here. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Clear all content views of type LogContentView when we clear the log sidebar panel. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._logsCleared): | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Make the log views from previous loads of the page non-editable. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogContentView.css: | |
| (#console-prompt.disabled): Make the field read only. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.setDisabled): Add the disabled class to the content prompt. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype.constructor.WebInspector.LogSidebarPanel._sessionStarted): Call setDisabled | |
| on the previously active LogContentView. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Have to double click on disclosure triangles for log messages with backtraces. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMTreeOutline.css: | |
| (.dom-tree-outline li.parent): Switch from text-indent to margin-left. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype.isEventWithinDisclosureTriangle): Update this to match open source. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Make console log messages with backtraces display correctly in the log view. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogContentView.css: Copied some rules about outline-disclosure from Open Source. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Create correct links in the Log content view. | |
| Instead of calling through to this._linkifier (which we don't have), create links ourselves. | |
| This will work by calling through to WebInspector.openURL, which will either open a resource in a new tab, | |
| or show you the resource content view for the link you clicked. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._linkifyLocation): We don't have a this._linkifier, so use our own function. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| When we get a console message from the ConsoleObserver, add it to the correct LogContentView. | |
| With this patch, we show console logging from the page in the content view, so it is now more than | |
| just a place to evaluate JavaScript. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.constructor.WebInspector.ConsoleObserver.messageAdded): Tell the LogManager about the | |
| added message. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager.prototype.messageWasAdded): Create a ConsoleMessage object, and fire an event that a new message | |
| was added. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): Add a listener for when messages are added. | |
| (WebInspector.LogSidebarPanel.prototype._messageAdded): Find the content view for the current log item, and call messageAdded | |
| on the LogContentView. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView.prototype.messageAdded): Call _consoleMessageAdded. | |
| (WebInspector.LogContentView.prototype._consoleMessageAdded): This now takes just the ConsoleMessage instead of an event. | |
| 2012-01-30 Brian Weinstein <bweinstein@apple.com> | |
| Enable the ConsoleAgent after creating the managers. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-01-30 Timothy Hatcher <timothy@apple.com> | |
| Add DOM properties to the DOM node details sidebar panel. | |
| Last part of: <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.css: Added. | |
| (.sidebar > .panel.details.dom-node .row.properties): | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype.refresh): Call _refreshProperties. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties): Added. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved.collectPrototypes): Added. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodeResolved): Added. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.nodePrototypesReady): Added. | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshProperties.fillSection): Added. | |
| * UserInterface/Main.html: Included DOMNodeDetailsSidebarPanel.css. | |
| * UserInterface/Section.css: | |
| (.section .header): Added position: relative so the disclosure triangles show up correctly. | |
| (.properties-tree): Added outline: none to prevent a focus ring. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Add a simple DOM node details sidebar panel that shows type, name and attributes. | |
| Part of: <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMNodeDetailsSidebarPanel.js: Added. | |
| (WebInspector.DOMNodeDetailsSidebarPanel): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype.refresh): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._refreshAttributes): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._attributesChanged): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._nodeTypeDisplayName): | |
| (WebInspector.DOMNodeDetailsSidebarPanel.prototype._createAttributesDataGrid): | |
| * UserInterface/Images/NavigationItemAngleBrackets.pdf: Added. | |
| * UserInterface/Main.html: Included DOMNodeDetailsSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Included DOMNodeDetailsSidebarPanel in the details sidebar list. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Add DOMDetailsSidebarPanel as a base class for all the DOM node focused details sidebar panels. | |
| Needed for: | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMDetailsSidebarPanel.js: Added. | |
| (WebInspector.DOMDetailsSidebarPanel): | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.inspect): | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.get domNode): | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.set domNode): | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.addEventListeners): | |
| (WebInspector.DOMDetailsSidebarPanel.prototype.removeEventListeners): | |
| * UserInterface/Main.html: Included DOMDetailsSidebarPanel.js. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Display information about the selected resource in the resource details sidebar panel. | |
| Last part of: <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: | |
| (WebInspector.ResourceDetailsSidebarPanel): Create DetailsSections for the various parts of info to display. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.set resource): Remove and add event listeners. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): Call the individual refresh functions. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshURL): Added. Update the affected rows. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshResourceType): Added. Ditto. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshMIMEType): Added. Ditto. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshRequestHeaders): Added. Ditto. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._refreshResponseHeaders): Added. Ditto. | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype._createNameValueDataGrid): Added. Helper to create a simple grid. | |
| * UserInterface/Utilities.js: | |
| (parseLocationQueryParameters): Use the queryString function after trimming the "?". | |
| (queryString): Added. Factored out of parseLocationQueryParameters. | |
| (queryString.decode): Added. Properly decode "+" as " ". | |
| 2012-01-26 Timothy Hatcher <timothy@apple.com> | |
| Add the start of WebInspector.ResourceDetailsSidebarPanel. | |
| Part of: <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.html: Included ResourceDetailsSidebarPanel.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a WebInspector.ResourceDetailsSidebarPanel. | |
| * UserInterface/ResourceDetailsSidebarPanel.js: Added. | |
| (WebInspector.ResourceDetailsSidebarPanel): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.inspect): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.get resource): | |
| (WebInspector.ResourceDetailsSidebarPanel.prototype.refresh): | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Add DetailsSection and friends to be used by details sidebar panels. | |
| Needed for: | |
| <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DetailsSection.css: Added. | |
| (.details-section): | |
| (.details-section > .header): | |
| (.details-section > .header::before): | |
| (.details-section > .header:active::before): | |
| (.details-section.collapsed > .header::before): | |
| (.details-section.collapsed > .header:active::before): | |
| (.details-section > .content): | |
| (.details-section.collapsed > .content): | |
| (.details-section > .content > .group): | |
| (.details-section > .content > .group:nth-child(even)): | |
| (.details-section > .content > .group:nth-child(even) > .row:first-child > *): | |
| (.details-section > .content > .group:nth-child(even) > .row:last-child > *): | |
| (.details-section > .content > .group > .row): | |
| (.details-section > .content > .group > .row:last-child > *): | |
| (.details-section > .content > .group > .row.empty): | |
| (.details-section > .content > .group:nth-child(even) > .row.empty:last-child): | |
| (.details-section > .content > .group:nth-child(even) > .row.empty:last-child > *): | |
| (.details-section > .content > .group:nth-child(even) > .row.empty:last-child > * > *): | |
| (.details-section > .content > .group > .row > *): | |
| (.details-section > .content > .group > .row > .label): | |
| (.details-section > .content > .group > .row > .value): | |
| (.details-section > .content > .group > .data-grid-row): | |
| (.details-section > .content > .group > .data-grid-row.empty): | |
| (.details-section > .content .data-grid): | |
| * UserInterface/DetailsSection.js: Added. | |
| (WebInspector.DetailsSection): | |
| (WebInspector.DetailsSection.prototype.get element): | |
| (WebInspector.DetailsSection.prototype.get title): | |
| (WebInspector.DetailsSection.prototype.set title): | |
| (WebInspector.DetailsSection.prototype.get collapsed): | |
| (WebInspector.DetailsSection.prototype.set collapsed): | |
| (WebInspector.DetailsSection.prototype.get groups): | |
| (WebInspector.DetailsSection.prototype.set groups): | |
| (WebInspector.DetailsSection.prototype._headerElementClicked): | |
| (WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded.disclosureImageLoaded): | |
| (WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded.generateDisclosureTriangle): | |
| (WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded): | |
| * UserInterface/DetailsSectionDataGridRow.js: Added. | |
| (WebInspector.DetailsSectionDataGridRow): | |
| (WebInspector.DetailsSectionDataGridRow.prototype.constructor.WebInspector.DetailsSectionDataGridRow.get element): | |
| (WebInspector.DetailsSectionDataGridRow.prototype.get emptyMessage): | |
| (WebInspector.DetailsSectionDataGridRow.prototype.set emptyMessage): | |
| (WebInspector.DetailsSectionDataGridRow.prototype.get dataGrid): | |
| (WebInspector.DetailsSectionDataGridRow.prototype.set dataGrid): | |
| * UserInterface/DetailsSectionGroup.js: Added. | |
| (WebInspector.DetailsSectionGroup): | |
| (WebInspector.DetailsSectionGroup.prototype.get element): | |
| (WebInspector.DetailsSectionGroup.prototype.get rows): | |
| (WebInspector.DetailsSectionGroup.prototype.set rows): | |
| * UserInterface/DetailsSectionRow.js: Added. | |
| (WebInspector.DetailsSectionRow): | |
| (WebInspector.DetailsSectionRow.prototype.get element): | |
| (WebInspector.DetailsSectionRow.prototype.get label): | |
| (WebInspector.DetailsSectionRow.prototype.set label): | |
| (WebInspector.DetailsSectionRow.prototype.get value): | |
| (WebInspector.DetailsSectionRow.prototype.set value): | |
| * UserInterface/Main.html: Included DetailsSection.{css,js}, DetailsSectionDataGridRow.js, | |
| DetailsSectionGroup.js, and DetailsSectionRow.js. | |
| 2012-01-26 Timothy Hatcher <timothy@apple.com> | |
| Selectively show and hide panels in the Details sidebar based on if they can inspect the current | |
| represented objects being viewed in the content browser. | |
| Needed for: | |
| <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added event listener for CurrentRepresentedObjectsDidChange event. | |
| (WebInspector._contentBrowserRepresentedObjectsDidChange): Added. Call inspect on each details | |
| sidebar panel and show ones that return true and hide ones that return false. | |
| 2012-01-26 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DetailsSidebarPanel for use by panels in the Details sidebar. | |
| Needed for: | |
| <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DetailsSidebarPanel.js: Added. | |
| (WebInspector.DetailsSidebarPanel): | |
| (WebInspector.DetailsSidebarPanel.prototype.inspect): | |
| (WebInspector.DetailsSidebarPanel.prototype.shown): | |
| (WebInspector.DetailsSidebarPanel.prototype.needsRefresh): | |
| (WebInspector.DetailsSidebarPanel.prototype.refresh): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): Call hidden and shown on the SidebarPanel. | |
| (WebInspector.Sidebar.prototype.set collapsed): Update layout of the navigation bar when uncollapsed. | |
| * UserInterface/SidebarPanel.js: | |
| (WebInspector.SidebarPanel.prototype.shown): Added stub. | |
| (WebInspector.SidebarPanel.prototype.hidden): Added stub. | |
| 2012-01-26 Timothy Hatcher <timothy@apple.com> | |
| Add support for removing and inserting SidebarPanels to WebInspector.Sidebar. | |
| Needed for: | |
| <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.removeNavigationItem): Clear the selected navigation item if it is this. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.insertSidebarPanel): Added. | |
| (WebInspector.Sidebar.prototype.removeSidebarPanel): Added. | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): Allow setting of null. Factored out code into _findSidebarPanel. | |
| (WebInspector.Sidebar.prototype._findSidebarPanel): Added. | |
| 2012-01-25 Timothy Hatcher <timothy@apple.com> | |
| Add support for getting the current represented objects from ContentBrowser. | |
| Needed for: | |
| <rdar://problem/10319511> Implement the File inspector for the new Web Inspector design | |
| <rdar://problem/10319520> Implement the Style inspector for the new Web Inspector design | |
| <rdar://problem/10319527> Implement the DOM Attributes inspector for the new Web Inspector design | |
| <rdar://problem/10319536> Implement the Metrics inspector for the new Web Inspector design | |
| <rdar://problem/10319541> Implement the Properties/DOM object inspector for the new Web Inspector design | |
| <rdar://problem/10319546> Implement the Event Listener inspector for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.get currentRepresentedObjects): Added. | |
| (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem): Make sure to set | |
| components even if it is empty. | |
| (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon): Set a timeout. | |
| (WebInspector.ContentBrowser.prototype._dispatchCurrentRepresentedObjectsDidChangeEventSoon.delayed): Fire the event. | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): Call | |
| _dispatchCurrentRepresentedObjectsDidChangeEventSoon. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Call | |
| _dispatchCurrentRepresentedObjectsDidChangeEventSoon. | |
| * UserInterface/DOMTreeElementPathComponent.js: | |
| (WebInspector.DOMTreeElementPathComponent): Set the representedObject to the treeElement.representedObject if | |
| a representedObject wasn't passed in. | |
| * UserInterface/GeneralTreeElementPathComponent.js: | |
| (WebInspector.GeneralTreeElementPathComponent): Set the representedObject to the treeElement.representedObject if | |
| a representedObject wasn't passed in. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.get lastComponent): Added. | |
| 2012-01-26 Timothy Hatcher <timothy@apple.com> | |
| Center align navigation items in navigation bars by default. | |
| You can still get left alignment by adding a flexible space on the left. This make it easier than | |
| flexible spaces on each side for center alignment. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar): Set -webkit-box-pack to center. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Add a helper function for display names of resource types. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype._folderNameForResourceType): Use WebInspector.Resource.Type.displayName. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.Type.displayName): Added. Can return plural or singular strings. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Update the request headers when resources are redirected. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Pass along the | |
| request headers to updateForRedirectResponse. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get updateForRedirectResponse): Added requestHeaders parameter. | |
| Set _requestHeaders and fire the RequestHeadersDidChange event. | |
| 2012-01-29 Timothy Hatcher <timothy@apple.com> | |
| Centralize the code that adds zero-width spaces to long strings so it can be used | |
| in other places. | |
| Also add a copy event listener that strips the zero-width spaces from the pasteboard. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._buildAttributeDOM): Use insertWordBreakCharacters. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added copy event listener. | |
| (WebInspector._sanitizeClipboardData): Added. | |
| * UserInterface/Utilities.js: | |
| (String.prototype.insertWordBreakCharacters): Added. | |
| (String.prototype.removeWordBreakCharacters): Added. | |
| 2012-01-27 Brian Weinstein <bweinstein@apple.com> | |
| Create a log session when the inspector is first loaded. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| 2012-01-27 Brian Weinstein <bweinstein@apple.com> | |
| Add some functions for open source needed to create links and strings. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogContentView.js: | |
| (WebInspector.LogContentView): Add a click handler to the content view. | |
| (WebInspector.LogContentView.prototype._mouseWasClicked): Find the <a> element we clicked on, | |
| and open the URL. This does the right thing for external resources (loads them in Safari), | |
| and resources from the page (loads the Resource in the inspector). | |
| * UserInterface/Main.js: | |
| (WebInspector.linkifyURLAsNode): Copied from open source. | |
| (WebInspector.linkifyStringAsFragmentWithCustomLinkifier): Ditto. | |
| (WebInspector.linkifyStringAsFragment): Ditto. | |
| 2012-01-27 Brian Weinstein <bweinstein@apple.com> | |
| Show the DOM tree for an element that the user enters. | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleMessageImpl.js: | |
| (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode): Create a DOMTreeOutline instead | |
| of an ElementTreeOutline, and get the node from the DOMTreeManager. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add working versions of LogContentView.css and LogContentView.js. | |
| LogContentView.css copied rules for open source's | |
| inspector.css, with one change to add outline: none to the prompt and a change to use the same font that | |
| we use in the text editor. | |
| LogContentView.js changed *styleClass to classList.*, and removed calls to objects that we don't have in | |
| our inspector (WebInspector.settings, WebInspector.debuggerPresentationModel). | |
| This patch makes the console view show up, and you can type and run JavaScript. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogContentView.css: Added. Copied selected rules from inspector.css in Open Source. | |
| * UserInterface/LogContentView.js: Added. This file was copied from Open Source, but changes have been | |
| made to remove calls to objects that we don't have in our inspector (WebInspector.settings, WebInspector.debuggerPresentationModel), | |
| and *styleClass has been changed to classList.*. | |
| * UserInterface/Main.html: Added new files. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add some needed functions to Utilities.js. These were copied from Open Source, but switched over | |
| to the Object.defineProperty syntax. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Utilities.js: | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add the ConsoleMessage and ConsoleMessageImpl files from Open Source. These will be renamed | |
| and combined in a follow-up patch. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleMessage.js: Added. Copied from Open Source's ConsoleModel.js. | |
| * UserInterface/ConsoleMessageImpl.js: Added. Copied from Open Source. The only changes are | |
| changing *styleClass -> classList.*. | |
| * UserInterface/Main.html: Added new files. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add the TextPrompt.js and TextPrompt.css files. These are needed for autocompleting of the | |
| user's input. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: Add new files. | |
| * UserInterface/TextPrompt.css: Added. Copied from Open Source. | |
| * UserInterface/TextPrompt.js: Added. Copied from Open Source. The only changes that were | |
| made were changing *styleClass("class") -> classList.*("class"). | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add some images that will be needed by the log console view. | |
| These need to be in HiDPI. I updated <rdar://problem/10749265> to say that the console images | |
| need to be HiDPI as well. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Images/disclosureTriangleSmallDown.png: Added. | |
| * UserInterface/Images/disclosureTriangleSmallRight.png: Added. | |
| * UserInterface/Images/errorIcon.png: Added. | |
| * UserInterface/Images/searchSmallBrightBlue.png: Added. | |
| * UserInterface/Images/userInputIcon.png: Added. | |
| * UserInterface/Images/userInputResultIcon.png: Added. | |
| * UserInterface/Images/warningIcon.png: Added. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add some needed files from Open Source. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Images/deleteIcon.png: Added. | |
| * UserInterface/Main.html: Added new files. | |
| * UserInterface/ObjectPropertiesSection.js: Added. Copied from Open Source. | |
| * UserInterface/PropertiesSection.js: Added. Copied from Open Source. | |
| * UserInterface/Section.css: Added. Copied selected rules about .section and .properties-tree from Open Source. | |
| * UserInterface/Section.js: Added. Copied from Open Source. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| This patch hooks up the plumbing to show a LogContentView (which doesn't exist), when a tree element | |
| from the Log sidebar panel is selected. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add a case for LogObject. It creates a LogContentView, which isn't available | |
| yet, but will be in a later patch. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| (WebInspector.LogSidebarPanel.prototype._treeElementSelected): Make sure the selected element | |
| has a LogObject as its represented object, and then show the correct content view. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Add a case for LogObject. | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add a stub LogObject and use that as the represented object for the logs sidebar panel. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogObject.js: Added. | |
| (WebInspector.LogObject): | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel.prototype._sessionStarted): | |
| * UserInterface/Main.html: | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add tree elements to the Log Sidebar. Each tree element has the URL and date of when the page started loading, | |
| and selecting it will show a console view in the future. | |
| If the same page is loaded, the console sidebar isn't cleared, but when a page with a different URL is loaded, | |
| then the sidebar is cleared. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/LogManager.js: | |
| (WebInspector.LogManager): | |
| (WebInspector.LogManager.prototype.constructor.WebInspector.LogManager.initialize): | |
| (WebInspector.LogManager.prototype._mainResourceDidChange): | |
| * UserInterface/LogSidebarPanel.js: | |
| (WebInspector.LogSidebarPanel): | |
| (WebInspector.LogSidebarPanel.prototype.constructor.WebInspector.LogSidebarPanel._sessionStarted): | |
| (WebInspector.LogSidebarPanel.prototype._logsCleared): | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add a stub LogManager, and call it from Main.js. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.constructor.WebInspector.ConsoleObserver.messageAdded): | |
| * UserInterface/LogManager.js: Added. | |
| (WebInspector.LogManager): | |
| (WebInspector.LogManager.prototype.constructor.WebInspector.LogManager.initialize): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-01-26 Brian Weinstein <bweinstein@apple.com> | |
| Start of <rdar://problem/10318784> Implement the Log sidebar for the new Web Inspector design. | |
| Add a stub LogSidebarPanel and create it instead of a generic sidebar panel for Log. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2012-01-25 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Highlight lines that have errors or warnings. This patch doesn't behave correctly for lines that | |
| have multiple issues, but that won't be implemented until we actually show the issues on the page. | |
| This patch adds a new delegate call to TextEditor - textEditorLineContentUpdated. When a single line's | |
| content is updated, it calls to the delegate, which will add a style class if there is an issue on that | |
| line. In the future, it will also add the error text, but that will be done later as well. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/TextResourceContentView.css: | |
| (.text-editor .text-editor-text-chunk.error): Add a background color and a box shadow. | |
| (.text-editor .text-editor-text-chunk.warning): Ditto. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.singleLineElementForLine): Returns the element of the line if it is | |
| a single line (if it's not, it isn't visible and we don't need to worry about it). | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.addIssue): Call _addIssueToLine if we have an element to update. | |
| (WebInspector.TextResourceContentView.prototype._addIssueToLine): Add a style class to the line if there is an | |
| issue. | |
| (WebInspector.TextResourceContentView.prototype.textEditorLineContentUpdated): Call _addIssueToLine if we have | |
| any issues on that line. | |
| * UserInterface/IssueManager.js | |
| (WebInspector.IssueManager.prototype.issueWasAdded): We are given 1-based line numbers from the protocol, but everywhere | |
| in the inspector deals with 0 based line numbers. Subtract 1 from the issue line number that we are given before | |
| storing the IssueMessage. | |
| 2012-01-24 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| When a TextResourceContentView is instantiated, get a list of issues for its resource, and start listening for more. | |
| When we get an issue from the listener or from the constructor, call _addIssue on them, which adds the issue to | |
| the content view's collection of issues. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Start listening for issues and build a list of issues. | |
| (WebInspector.TextResourceContentView.prototype._issueWasAdded): Call _addIssue. | |
| (WebInspector.TextResourceContentView.prototype._addIssue): Add the issue to our list of issues, and add a FIXME to do more | |
| with it. | |
| 2012-01-23 Brian Weinstein <bweinstein@apple.com> | |
| Remove some unused variables. | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| 2012-01-23 Brian Weinstein <bweinstein@apple.com> | |
| Last part of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| When a resource match is selected in the search sidebar, select the text that was searched for in | |
| the TextContentResourceView and scroll it into view. | |
| This makes it easier to find the text that the user searched for in long lines. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.showSourceCode): Pass the text range to select along. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showResourceSourceCode): Ditto. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementSelected): Ditto. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Ditto. | |
| (WebInspector.TextResourceContentView.prototype.revealLine): Ditto. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.shown): Ditto. | |
| (WebInspector.TextEditor.prototype.revealLine): Build a selection range (start and end nodes and offsets), and set our selection | |
| and bring the container of the selection end into view. | |
| (WebInspector.TextEditor.prototype.revealLine.getTextNodes): Finds all of the text nodes in a possibly syntax highlighted line. | |
| (WebInspector.TextEditor.prototype.revealLine.findOffsetInTextNodes): Iterate over all of the text nodes, and find the child | |
| node and offset into the child node that matches the offset into the whole line. | |
| 2012-01-23 Timothy Hatcher <timothy@apple.com> | |
| Fix some errors when inspecting frames now that #document is included in the tree. | |
| This gives document nodes their own "D" icon, which was previously missing because of | |
| a typo for the "N" icon. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeElementPathComponent.js: | |
| (WebInspector.DOMTreeElementPathComponent): Add a case for Node.DOCUMENT_NODE. Fix a typo | |
| by using DOMNodeIconStyleClassName instead of DOMUnknownNodeIconStyleClassName. | |
| * UserInterface/Images/DOMDocument.pdf: Added. | |
| * UserInterface/PathComponentIcons.css: | |
| (.dom-document-icon .icon): Added. | |
| 2012-01-23 Timothy Hatcher <timothy@apple.com> | |
| Merge the DOMAgent.js change in r105620 so the Inspect Element content menu works in frames. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode.prototype._setChildrenPayload): Return early for frame elements. | |
| 2012-01-23 Timothy Hatcher <timothy@apple.com> | |
| Make command-clicking links in the DOM tree always open into a new Safari window/tab. | |
| Since DOMTreeContentView delays the call to WebInspector.openURL, the openURL function | |
| can't look at window.event to see if the command key is down. So we need to do that | |
| check before calling openURL. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked.followLink): Check for metaKey | |
| and pass that as alwaysOpenExternally to WebInspector.openURL. | |
| 2012-01-23 Timothy Hatcher <timothy@apple.com> | |
| Use InspectorFrontendHost.openInNewTab instead of PageAgent.open now that | |
| https://webkit.org/b/74790 is fixed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): Use InspectorFrontendHost.openInNewTab instead of PageAgent.open. | |
| 2012-01-23 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Support the ability to have multiple matches on a line when we search the DOM. | |
| When we find a DOM element matches our search term, we generate a title for it (by moving the _generateTitle | |
| function from DOMSearchMatchObject out of the class to a static method), and find all of our matches in the title. | |
| We then generate DOMSearchMatchObjects and SearchResultTreeElements for each of these. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMSearchMatchObject.js: | |
| (WebInspector.DOMSearchMatchObject): | |
| (WebInspector.DOMSearchMatchObject.prototype.get title): Returns the title. | |
| (WebInspector.DOMSearchMatchObject.prototype.get textRange): Returns the text range. | |
| (WebInspector.DOMSearchMatchObject.titleForDOMNode): | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): We always have a textRange now, both DOMSearchMatchObject and ResourceSearchMatchObject | |
| both have a textRange getter. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback.domSearchResults): Generate | |
| the text for the DOM node that we found a result for, and find all of the matching instances in that node. | |
| 2012-01-23 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Support the ability to have multiple matches on a line for when we search in a resource. | |
| When the PageAgent gives us information about the lines that match our search query, instead of just | |
| finding the first match, find all of the matches on that line. Create a ResourceSearchMatchObject and | |
| SearchResultTreeElement for each result on the line. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| (WebInspector.ResourceSearchMatchObject): Set the textRange | |
| (WebInspector.ResourceSearchMatchObject.prototype.get textRange): | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement): | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): If we were given a text range, use that instead of finding the first match | |
| in the title. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback.resourceCallback): Find | |
| all of the matches on the line instead of just the first one. | |
| 2012-01-23 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Bring TextRange over from open source. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/TextRange.js: Added. | |
| (WebInspector.TextRange): | |
| (WebInspector.TextRange.prototype.constructor.WebInspector.TextRange.isEmpty): | |
| (WebInspector.TextRange.prototype.get linesCount): | |
| (WebInspector.TextRange.prototype.collapseToEnd): | |
| (WebInspector.TextRange.prototype.normalize): | |
| (WebInspector.TextRange.prototype.clone): | |
| 2012-01-20 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Cancel old searches when new ones are started. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback.domSearchResults): Check | |
| to make sure we are still appending results for the right searchId. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback): Set the current _searchId. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged): Call _cancelCurrentSearch. | |
| (WebInspector.SearchSidebarPanel.prototype._cancelCurrentSearch): If a search ID is set, call DOMAgent.discardSearchResults on it, | |
| and delete the searchId. | |
| 2012-01-22 Timothy Hatcher <timothy@apple.com> | |
| Collaspe path components in the navigation bar when they are too wide to fit. | |
| The components collapse from left to right with text truncation and eventually to just the icon. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path-component): Use -webkit-box and set a min-width. | |
| (.hierarchical-path-component > .title): Use -webkit-box so the title can flex. | |
| (.hierarchical-path-component > .title > .content): Added. Needed to make text-overflow work. | |
| (.hierarchical-path:not(.always-show-last-path-component-separator) > .hierarchical-path-component:last-child): Added. | |
| Use a different min-width since the separator is hidden. | |
| (.hierarchical-path:not(.always-show-last-path-component-separator) > .hierarchical-path-component:last-child > .separator): | |
| Renamed to use :last-child instead of :last-of-type. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): Create a title content element. | |
| (WebInspector.HierarchicalPathComponent.prototype.get displayName): Use the title content element. | |
| (WebInspector.HierarchicalPathComponent.prototype.set displayName): Ditto. Also set the tool tip. | |
| (WebInspector.HierarchicalPathComponent.prototype.get forcedWidth): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set forcedWidth): Added. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): Call updateLayout on the NavigationBar. | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.updateLayout): Added. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.insertNavigationItem): Set _parentNavigationBar to this. | |
| (WebInspector.NavigationBar.prototype.removeNavigationItem): Set _parentNavigationBar to null. | |
| (WebInspector.NavigationBar.prototype.updateLayout): Call updateLayout on each navigation item. | |
| * UserInterface/NavigationItem.js: | |
| (WebInspector.NavigationItem.prototype.get parentNavigationBar): Added. | |
| (WebInspector.NavigationItem.prototype.updateLayout): Added stub. | |
| 2012-01-22 Timothy Hatcher <timothy@apple.com> | |
| Make it possible for content views to update their layout as the size of the content area changes. | |
| The DOM tree needs this to update the size of the selection to stay aligned with the row. Data grid | |
| based content views need this to update the position of the resizer elements. The font content view | |
| uses this to update the size of the font preview. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.updateLayout): Added. Call through to the current content view. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.updateLayout): Added. Call updateLayout on the navigation bar and | |
| the content view container. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.updateLayout): Added stub. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.updateLayout): Added. Call through to the current content view. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype.updateLayout): Added. Call updateWidths on the DataGrid. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype.updateLayout): Added. Call updateWidths on the DataGrid. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.updateLayout): Added. Call updateSelection on the DOMTreeOutline. | |
| * UserInterface/DatabaseTableContentView.js: | |
| (WebInspector.DatabaseTableContentView.prototype.updateLayout): Added. Call updateWidths on the DataGrid. | |
| * UserInterface/FontResourceContentView.js: | |
| (WebInspector.FontResourceContentView.prototype.updateLayout): Added. Call sizeToFit. | |
| (WebInspector.FontResourceContentView.prototype.shown): Removed call to sizeToFit since updateLayout is | |
| called on show too. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added event listeners for Sidebar.Event.WidthDidChange and window resize. | |
| (WebInspector._contentBrowserSizeDidChange): Added. Call updateLayout on contentBrowser. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set width): Fire WidthDidChange event. | |
| (WebInspector.Sidebar.prototype.set collapsed): Ditto. | |
| 2012-01-21 Timothy Hatcher <timothy@apple.com> | |
| Remove resources from the Search and Issue sidebars when the frames they belong to are | |
| removed or navigated to a new page. | |
| Part of: | |
| <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design | |
| <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.isDetached): Added. Helper function. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Added event listeners. | |
| (WebInspector.IssueSidebarPanel.prototype._checkForOldResources): Added. | |
| (WebInspector.IssueSidebarPanel.prototype._checkForOldResources.delayedWork): Added. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Added event listeners. | |
| (WebInspector.SearchSidebarPanel.prototype._checkForOldResources): Added. | |
| (WebInspector.SearchSidebarPanel.prototype._checkForOldResources.delayedWork): Added. | |
| 2012-01-21 Timothy Hatcher <timothy@apple.com> | |
| Disassociate resources from their frame when the main resource changes. | |
| Resources were not being disassociated, so they always had a valid parentFrame. This made it | |
| hard to tell if a resource was still part of the page or not. This change is needed so the Search | |
| and Issue sidebars knows when it can remove resources during navigation. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.initialize): Call _disassociateWithResource for the old main resource. | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): Ditto. Also call removeAllResources before | |
| committing the provisional resources. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.isMainResource): Null check _parentFrame. | |
| (WebInspector.Resource.prototype._requestContentFromBackend): Null check _parentFrame and add a | |
| fallback branch so pending callbacks get notified. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Null check frame. | |
| 2012-01-21 Timothy Hatcher <timothy@apple.com> | |
| Show a focus ring around the search field in the Search sidebar of the Web Inspector. | |
| The filter field does not show a focus ring (matching Xcode), but the search field should. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/FilterBar.css: | |
| (.filter-bar): Remove outline: none. Not sure why it was here, it is still set on | |
| .filter-bar > input[type="search"]. | |
| * UserInterface/SearchSidebarPanel.css: | |
| (.sidebar > .panel.search > .search-bar): Remove outline: none. | |
| (.sidebar > .panel.search > .search-bar > input[type="search"]): Ditto. | |
| 2012-01-21 Timothy Hatcher <timothy@apple.com> | |
| Make filtering work again in the Search sidebar of the Web Inspector. | |
| In r40218 the mainTitle became a DocumentFragemnt, but the filtering code expects a string. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement.prototype.get filterableData): Added. Return the raw | |
| title of the represented object, which is still a string. | |
| 2012-01-20 Timothy Hatcher <timothy@apple.com> | |
| Allow resizing the Web Inspector when docked. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.css: | |
| (#docked-resizer): Added. | |
| (body.docked #docked-resizer): Added. | |
| * UserInterface/Main.html: Added #docked-resizer element. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Add mousedown listener on #docked-resizer. | |
| (WebInspector._dockedResizerMouseDown): Added. | |
| (WebInspector._dockedResizerMouseDown.dockedResizerDrag): Added. | |
| (WebInspector._dockedResizerMouseDown.dockedResizerDragEnd): Added. | |
| 2012-01-20 Timothy Hatcher <timothy@apple.com> | |
| Add dock toggle and close buttons to the new Web Inspector. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar > .item.button:not(.disabled):not(.radio):not(.suppress-bezel):active): | |
| Added :not(.suppress-bezel). | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.get suppressBezel): Added. | |
| (WebInspector.ButtonNavigationItem.prototype.set suppressBezel): Added. | |
| * UserInterface/Images/Close.pdf: Added. | |
| * UserInterface/Images/Dock.pdf: Added. | |
| * UserInterface/Images/Undock.pdf: Added. | |
| * UserInterface/InspectorFrontendAPI.js: Added. | |
| (InspectorFrontendAPI._loaded): Added. | |
| (InspectorFrontendAPI._pendingCommands): Added. | |
| (InspectorFrontendAPI.isDebuggingEnabled): Added stub. | |
| (InspectorFrontendAPI.setDebuggingEnabled): Added stub. | |
| (InspectorFrontendAPI.isTimelineProfilingEnabled): Added stub. | |
| (InspectorFrontendAPI.setTimelineProfilingEnabled): Added stub. | |
| (InspectorFrontendAPI.isProfilingJavaScript): Added stub. | |
| (InspectorFrontendAPI.startProfilingJavaScript): Added stub. | |
| (InspectorFrontendAPI.stopProfilingJavaScript): Added stub. | |
| (InspectorFrontendAPI.setAttachedWindow): Added. Calls updateDockedState. | |
| (InspectorFrontendAPI.showConsole): Added stub. | |
| (InspectorFrontendAPI.dispatch): Added stub. | |
| (InspectorFrontendAPI.loadCompleted): Added stub. | |
| * UserInterface/Main.css: | |
| (body.docked): Added. Adds a top border. | |
| * UserInterface/Main.html: Included InspectorFrontendAPI.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create and insert the dock toggle and close buttons. Tell InspectorFrontendAPI | |
| that we are loaded so pending commands are dispatched. | |
| (WebInspector.updateDockedState): Added. Updates the sate of the navigation bar buttons. | |
| (WebInspector.close): Added. | |
| (WebInspector._dockToggleButtonToolTip): Added. | |
| (WebInspector._toggleDockedState): Added. | |
| * UserInterface/Utilities.js: | |
| (parseLocationQueryParameters): Added. Helper to parse the query string. | |
| 2012-01-19 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Instead of passing a string as a title to the GeneralTreeElement, pass a DocumentFragment which | |
| contains our necessary text, but highlights the search string. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype._updateTitleElements): Add a special case for _mainTitle | |
| being a Node. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .item .highlight): Set the highlighted text to have | |
| a yellow background with a darker yellow bottom border to match Xcode. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): Create a document fragment, and | |
| break the matching text into parts (before match, match, after match), and add a span around | |
| the matching text. | |
| 2012-01-19 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Implement proper truncation of the search results, so the search term will always show up in the | |
| title text of the search term | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMSearchMatchObject.js: | |
| (WebInspector.DOMSearchMatchObject.prototype.get searchTerm): Return the search term. | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| (WebInspector.ResourceSearchMatchObject.prototype.get searchTerm): Ditto. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement): Call truncateAndHighlightTitle. | |
| (WebInspector.SearchResultTreeElement.truncateAndHighlightTitle): Truncate the title, and | |
| add a FIXME about highlighting it. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Make selecting an issue in the Issue sidebar show the resource's content view and reveal the line. | |
| Part of: <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): Pass line to IssueManager. | |
| * UserInterface/IssueManager.js: | |
| (WebInspector.IssueManager.prototype.issueWasAdded): Added lineNumber parameter. | |
| * UserInterface/IssueMessage.js: | |
| (WebInspector.IssueMessage): Added lineNumber parameter. | |
| (WebInspector.IssueMessage.prototype.get lineNumber): Added. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): Set onselect to _treeElementSelected. | |
| (WebInspector.IssueSidebarPanel.prototype._treeElementSelected): Added. Call showResourceSourceCode | |
| based on the type of tree element selected. | |
| * UserInterface/IssueTreeElement.js: | |
| (WebInspector.IssueTreeElement): Added _issueMessage. | |
| (WebInspector.IssueTreeElement.prototype.get issueMessage): Added. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Make selecting the resource in the search sidebar show the resource. | |
| Part of: <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showResource): Added. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementSelected): Call ResourceSidebarPanel.showResource | |
| if the tree element is a ResourceTreeElement. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Make selecting text search results show the resource's content view and reveal the line. | |
| Part of: <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.showSourceCode): Added lineNumberToReveal parameter. | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| (WebInspector.ResourceSearchMatchObject.prototype.get resource): Added. | |
| (WebInspector.ResourceSearchMatchObject.prototype.get lineNumber): Added. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showMainFrameSourceCode): Added lineNumberToReveal parameter. | |
| (WebInspector.ResourceSidebarPanel.prototype.showResourceSourceCode): Added. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementSelected): Handle ResourceSearchMatchObject. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.revealLine): Added. Find the right text chunk for the line, then | |
| break it into single line text chunks then call scrollIntoViewIfNeeded on that text chunk. | |
| (WebInspector.TextEditor.prototype.shown): Set _visible to true. Check if there is a line number that | |
| needs to be revealed. | |
| (WebInspector.TextEditor.prototype.hidden): Set _visible to false. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Start _contentPopulated as false. | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Set _contentPopulated to true. Check if | |
| there is a line number that needs to be revealed. | |
| (WebInspector.TextResourceContentView.prototype.revealLine): Added. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Expand the resources tree elements in the Issues and Search sidebars by default. | |
| Part of: | |
| <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design | |
| <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel.prototype._issueWasAdded): Call expand. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementForResource): Call expand. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Call shown and hidden on the current content view in ClusterContentView. | |
| This is needed for DOMTreeContentView to correctly reveal the selected DOM node when shown. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.shown): Call shown on the currentContentView if there is one. | |
| (WebInspector.ClusterContentView.prototype.hidden): Call hidden on the currentContentView if there is one. | |
| (WebInspector.ClusterContentView.prototype.get selectionPathComponents): Return [] if there is no currentContentView. | |
| 2012-01-19 Timothy Hatcher <timothy@apple.com> | |
| Make selecting DOM search results reveal and select the node in the DOM tree. | |
| Part of: <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMSearchMatchObject.js: | |
| (WebInspector.DOMSearchMatchObject.get domNode): Added. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype.showDOMTree): Added preventFocusChange parameter. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.showMainFrameDOMTree): Added preventFocusChange parameter. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): Set onselect to _treeElementSelected. | |
| (WebInspector.SearchSidebarPanel.prototype._treeElementSelected): Added. Call showMainFrameDOMTree for | |
| DOMSearchMatchObject results. | |
| 2012-01-18 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Add icons for the search sidebar. We are reusing the icons from the path components icons, and added | |
| the resource match icon from Xcode. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMSearchMatchObject.js: | |
| (WebInspector.DOMSearchMatchObject.prototype.get className): Call _generateClassName. | |
| (WebInspector.DOMSearchMatchObject.prototype._generateClassName): Generate the correct class name from the node | |
| type. | |
| * UserInterface/Images/ResourceSearchMatch.pdf: Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceSearchMatchObject.js: | |
| (WebInspector.ResourceSearchMatchObject.prototype.get className): Return the resource match class name. | |
| * UserInterface/SearchIcons.css: Added. | |
| * UserInterface/SearchResultTreeElement.js: | |
| (WebInspector.SearchResultTreeElement): Ask either the DOMSearchMatchObject or ResourceSearchMatchObject for its className. | |
| 2012-01-18 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Add some new classes, and generate proper titles for DOM search matches. | |
| The new classes added are: | |
| - DOMSearchMatchObject, which represents a match of the search term in the DOM. | |
| - ResourceSearchMatchObject, which represents a match of the search term in a resource. | |
| - SearchResultTreeElement, which represents the tree elements in the search sidebar, and its represented | |
| object is either a DOMSearchMatchObject or a ResourceSearchMatchObject. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMSearchMatchObject.js: Added. | |
| (WebInspector.DOMSearchMatchObject): | |
| (WebInspector.DOMSearchMatchObject.prototype.constructor.WebInspector.DOMSearchMatchObject.get title): Call _generateTitle if we don't | |
| have one yet. | |
| (WebInspector.DOMSearchMatchObject.prototype._generateTitle): Generate a title from the DOMNode. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceSearchMatchObject.js: Added. | |
| (WebInspector.ResourceSearchMatchObject): | |
| (WebInspector.ResourceSearchMatchObject.prototype.constructor.WebInspector.ResourceSearchMatchObject.get title): Return the matching line | |
| text with a FIXME. | |
| * UserInterface/SearchResultTreeElement.js: Added. | |
| (WebInspector.SearchResultTreeElement): Assert our represented object is either a DOMSearchMatchObject or a ResourceSearchMatchObject. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback.resourceCallback): Create a SearchResultTreeElement. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback.domSearchResults): Ditto. | |
| 2012-01-18 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Implement searching of the DOM, and add the results to the search sidebar alongside matches in resources. | |
| This patch also stores the ResourceTreeElements in the SearchSidebarPanel class, since both DOM search results | |
| and resource search results will need to be under the same parent. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback.resourceCallback): | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback): | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback.domSearchResults): For each | |
| search result, get the DOM Node and owner document's URL, and add the DOM node under the owner document's ResourceTreeElement. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.domCallback): Call DOMAgent.getSearchResults. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged): Call DOMAgent.performSearch. | |
| 2012-01-18 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Implement searching of resources. Call the inspector API to search in all resources for our search term, | |
| and then for each resource that found a match, search in that resource for all of the matching lines. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback.resourceCallback): Loop | |
| over each matching line, and add a ResourceTreeElement for the parent, and a tree element for each matching search result. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged.resourcesCallback): For | |
| each matching resource, search the resource. | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged): Call PageAgent.searchInResources. | |
| 2012-01-17 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Add a search field to the search sidebar. It is there and looks pretty, but doesn't do anything yet. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/SearchSidebarPanel.css: Added. | |
| (.sidebar > .panel.search > .content): | |
| (.sidebar > .panel.search > .search-bar): | |
| (.search-bar): | |
| (.search-bar > input[type="search"]): | |
| * UserInterface/SearchSidebarPanel.js: | |
| (WebInspector.SearchSidebarPanel): | |
| (WebInspector.SearchSidebarPanel.prototype.constructor.WebInspector.SearchSidebarPanel._searchFieldChanged): | |
| 2012-01-17 Brian Weinstein <bweinstein@apple.com> | |
| Start of <rdar://problem/10318754> Implement the Search sidebar for the new Web Inspector design. | |
| Add a stub Search sidebar and call it from Main.js instead of creating a generic sidebar panel. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| * UserInterface/SearchSidebarPanel.js: Added. | |
| (WebInspector.SearchSidebarPanel): | |
| 2012-01-18 Timothy Hatcher <timothy@apple.com> | |
| Make the Inspect Element context menu item work along with the inspect() console function. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView.prototype.selectAndRevealDOMNode): Added. | |
| (WebInspector.DOMTreeContentView.prototype._pathComponentSelected): Use selectDOMNode | |
| instead of revealAndSelect since that also fires an event. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype.inspectElement): Fire DOMNodeWasInspected. | |
| (WebInspector.DOMTreeManager.prototype.inspectNodeObject): Added. Resolves an object to | |
| a DOMNode and calls inspectElement. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Remove call to _showContentViewForIdentifier. | |
| (WebInspector.FrameContentView.prototype.get selectionPathComponents): Return [] if there | |
| is no current content view. | |
| (WebInspector.FrameContentView.prototype.shown): Added. Show the DOM tree if _shownInitialContent | |
| is not true. | |
| (WebInspector.FrameContentView.prototype.closed): Added. Reset _shownInitialContent to false. | |
| (WebInspector.FrameContentView.prototype.showSourceCode): Added. Helper function. | |
| (WebInspector.FrameContentView.prototype.showDOMTree): Added. Helper function. | |
| (WebInspector.FrameContentView.prototype._pathComponentForContentView): Return null if there | |
| is no current content view. | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.inspect): Pass the object to the right manager. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Enable the InspectorAgent. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Add DOMNodeWasInspected event listener. | |
| (WebInspector.ResourceSidebarPanel.prototype.showMainFrameDOMTree): Added. Helper function. | |
| (WebInspector.ResourceSidebarPanel.prototype.showMainFrameSourceCode): Added. Helper function. | |
| (WebInspector.ResourceSidebarPanel.prototype._domNodeWasInspected): Added. Call showMainFrameDOMTree. | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager.prototype.inspectDatabase): Added. Fire DatabaseWasInspected event. | |
| (WebInspector.StorageManager.prototype.inspectDOMStorage): Added. Fire DOMStorageObjectWasInspected event. | |
| (WebInspector.StorageManager.prototype._databaseForId): Added. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasInspected): Added. Reveal and select the tree element. | |
| (WebInspector.StorageSidebarPanel.prototype._databaseWasInspected): Added. Ditto. | |
| 2012-01-18 Timothy Hatcher <timothy@apple.com> | |
| Add String.prototype.collapseWhitespace since it is needed by DOMTreeElement.js. | |
| Reviewed by Jing Jin. | |
| * UserInterface/Utilities.js: | |
| (String.prototype.collapseWhitespace): Added. | |
| 2012-01-18 Timothy Hatcher <timothy@apple.com> | |
| Now that the document node for child frames is included in the DOM tree, use it as the root | |
| for child frames to avoid seeing "#document" and having everything nested under it. | |
| Also use the straight forward approach to request the document if the DOMTree is for the main frame. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.mainDocumentAvailable): Added. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode): Evaluate "document" for child frames instead of | |
| "window.frameElement". And use WebInspector.domTreeManager.requestDocument for the main frame. | |
| 2012-01-17 Timothy Hatcher <timothy@apple.com> | |
| Rename ContentBrowser.showContentForRepresentedObject to ContentBrowser.showContentViewForRepresentedObject. | |
| Also adds ContentBrowser.showContentView and ContentBrowser.contentViewForRepresentedObject while making | |
| the showContentView* functions return the content view that was shown so it can be used by the caller. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.showContentViewForRepresentedObject): Renamed from showContentForRepresentedObject. | |
| (WebInspector.ContentBrowser.prototype.showContentView): Added. Call through to the contentViewContainer. | |
| (WebInspector.ContentBrowser.prototype.contentViewForRepresentedObject): Added. Ditto. | |
| (WebInspector.ContentBrowser.prototype._hierarchicalPathComponentWasSelected): Use showContentViewForRepresentedObject. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.showContentViewForRepresentedObject): Return the contentView shown. | |
| (WebInspector.ContentViewContainer.prototype.showContentView): Ditto. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.prototype._showContentViewForIdentifier): Return the contentView shown. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): Use showContentViewForRepresentedObject. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Use showContentViewForRepresentedObject | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): Use showContentViewForRepresentedObject | |
| 2012-01-17 Timothy Hatcher <timothy@apple.com> | |
| Prevent leaking Web Inspector content views by unregistering event listeners from external objects | |
| when the content views are closed. | |
| Since some content views were registering as event listeners on external objects that had indefinite or | |
| indeterminate lifetimes, that meant the closed content views were still around and responding to events | |
| after they had been closed. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView): Moved event listnener to shown. | |
| (WebInspector.ClusterContentView.prototype.shown): Added. Add event listener that was in the constructor. | |
| (WebInspector.ClusterContentView.prototype.closed): Added. Remove event listener and close all | |
| content views so they can do their own work. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.closed): Added stub. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Call closed on the view. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Moved event listnener to shown. | |
| (WebInspector.DOMTreeContentView.prototype.shown): Add event listener that was in the constructor. | |
| (WebInspector.DOMTreeContentView.prototype.closed): Added. Remove event listener. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Moved event listnener to shown. | |
| (WebInspector.ResourceContentView.prototype.shown): Added. Add event listener that was in the constructor. | |
| (WebInspector.ResourceContentView.prototype.closed): Added. Remove event listener. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Close the content views right away, not after | |
| a delay to prevent the content views from responding to events when they are about to be closed anyway. | |
| 2012-01-17 Timothy Hatcher <timothy@apple.com> | |
| Minimize churn in the DOM tree content view when navigating between pages. | |
| The DOMTree was calling callbacks multiple times because the list wasn't cleared | |
| when the RootDOMNodeDidChange was sent. And DOMTreeContentView would request | |
| the DOM node again when RootDOMNodeDidChange was observed, causing the same | |
| callback to be added back into the pending callbacks array. | |
| This change clears the pending callbacks array each time the DOMTree is invalidated | |
| so it is the responsibility of the client to listen for the RootDOMNodeInvalidated | |
| event and request the root DOM node again (which is what happens already.) | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree.Event.RootDOMNodeInvalidated): Renamed from RootDOMNodeDidChange to better | |
| reflect what is means. | |
| (WebInspector.DOMTree.prototype.invalidate.performInvalidate): Always fire the RootDOMNodeInvalidated | |
| event and clear the pending callbacks. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootObjectAvailable): Check if we were invalidated | |
| before continuing. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootDOMNodeAvailable): Ditto. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.dispatchCallbacks): Ditto. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Listen for the renamed RootDOMNodeInvalidated event. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeInvalidated): Renamed from _rootDOMNodeDidChange. | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater.prototype._documentUpdated): Don't set rootDOMNode since the outline | |
| might be for a subframe, and this is always the main document. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Properly create a RemoteObject in WebInspector.DOMTree so it can be released correctly. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTree.js: | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootObjectAvailable): Make a RemoteObject using | |
| WebInspector.RemoteObject.fromPayload and bind it to rootDOMNodeAvailable. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootDOMNodeAvailable): Release the remote object. | |
| 2012-01-17 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Add images for for the error and warning tree elements. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/Images/Error.pdf: Added. | |
| * UserInterface/Images/Warning.pdf: Added. | |
| * UserInterface/IssueIcons.css: Added. | |
| (.error-issue-icon .icon): | |
| (.warning-issue-icon .icon): | |
| * UserInterface/IssueTreeElement.js: | |
| (WebInspector.IssueTreeElement): | |
| * UserInterface/Main.html: | |
| 2012-01-16 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Move the information about an Issue tree element from IssueSidebarPanel to its own class - IssueTreeElement. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel.prototype.constructor.WebInspector.IssueSidebarPanel._issueWasAdded): Create a new | |
| IssueTreeElement, instead of a GeneralTreeElement. | |
| * UserInterface/IssueTreeElement.js: Added. | |
| (WebInspector.IssueTreeElement): Call through to GeneralTreeElement and set some properties. | |
| (WebInspector.IssueTreeElement.titleForIssue): Moved from IssueSidebarPanel. | |
| * UserInterface/Main.html: Added new file. | |
| 2012-01-16 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Implement displaying formatted console messages in the Issues Sidebar. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.constructor.WebInspector.ConsoleObserver.messageAdded): Pass along the | |
| parameters. | |
| * UserInterface/IssueManager.js: | |
| (WebInspector.IssueManager.prototype.issueWasAdded): Ditto. | |
| * UserInterface/IssueMessage.js: | |
| (WebInspector.IssueMessage): Turn the objects that we were passed in as parameters | |
| into WebInspector.RemoteObjects, and call this._formatTextIfNecessary to format | |
| our text. | |
| (WebInspector.IssueMessage.prototype._formatTextIfNecessary.valueFormatter): Get the value of the RemoteObject. | |
| (WebInspector.IssueMessage.prototype._formatTextIfNecessary.append): Append b to a, and return a. | |
| (WebInspector.IssueMessage.prototype._formatTextIfNecessary): Format our text, and append any unused substitutions | |
| to the string we generate. Once we are done generating the string, we set that as our text. | |
| 2012-01-13 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Clear the issues sidebar when the page is navigated. Add a listener in IssueManager that fires an | |
| event that IssueSidebarPanel listens to. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/IssueManager.js: | |
| (WebInspector.IssueManager): | |
| (WebInspector.IssueManager.prototype.issueWasAdded): | |
| (WebInspector.IssueManager.prototype._mainResourceDidChange): | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): | |
| (WebInspector.IssueSidebarPanel.prototype.constructor.WebInspector.IssueSidebarPanel._issueWasAdded): | |
| (WebInspector.IssueSidebarPanel.prototype._issuesCleared): | |
| 2012-01-13 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Add things to the Issues sidebar, sorted by file. We currently only show issues that have a URL provided. | |
| Each folder in the sidebar is a resource where the error came from. Each issue has a main title of the | |
| kind of issue it is, and a subtitle of the issue text. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ConsoleObserver.js: | |
| (WebInspector.ConsoleObserver.prototype.constructor.WebInspector.ConsoleObserver.messageAdded): If the message | |
| was an error or warning, tell the IssueManager about it. | |
| * UserInterface/IssueManager.js: Added. | |
| (WebInspector.IssueManager): | |
| (WebInspector.IssueManager.prototype.constructor.WebInspector.IssueManager.initialize): | |
| (WebInspector.IssueManager.prototype.issueWasAdded): Dispatch a message saying an issue was added. | |
| * UserInterface/IssueMessage.js: Added. | |
| (WebInspector.IssueMessage): | |
| * UserInterface/IssueSidebarPanel.js: | |
| (WebInspector.IssueSidebarPanel): | |
| (WebInspector.IssueSidebarPanel.prototype.constructor.WebInspector.IssueSidebarPanel._issueWasAdded): | |
| (WebInspector.titleForIssue): | |
| * UserInterface/Main.html: Add new files. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Initialize the IssueManager. | |
| * UserInterface/Utilities.js: | |
| (Object.defineProperty): Add String.prototype.startsWith. | |
| 2012-01-13 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Add a new flavor of tree item to tree elements in a NavigationSidebarPanel. If you set both the small and twoLine properties | |
| on a tree element, the title and subtitle will be on two lines, but it will only be slightly bigger than the | |
| small style, and will still use the same small icon size. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.get twoLine): | |
| (WebInspector.GeneralTreeElement.prototype.set twoLine): | |
| (WebInspector.GeneralTreeElement.prototype.onattach): | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .item.small.two-line): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small.two-line .titles): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small.two-line .titles.no-subtitle): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small.two-line .icon): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small:not(.two-line) .title::after): | |
| (.navigation-sidebar-panel-content-tree-outline .item.small:not(.two-line) .subtitle::before): | |
| 2012-01-13 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Implement FrameResourceManager.resourceForURL. This checks the main frame's main resource for the passed in URL, | |
| and then calls the main frame's resourceForURL function, which checks subresources and recursively checks | |
| subframes for the correct URL. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceForURL): | |
| 2012-01-12 Brian Weinstein <bweinstein@apple.com> | |
| Start of <rdar://problem/10318761> Implement the Issue sidebar for the new Web Inspector design. | |
| Add a stub IssueSidebarPanel and call it from Main.js instead of just creating a generic sidebar panel. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/IssueSidebarPanel.js: Added. | |
| (WebInspector.IssueSidebarPanel): | |
| * UserInterface/Main.html: Add new file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an IssueSidebarPanel. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make the DOM tree content view show the current DOM node selection path in the quick navigation bar. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Added event listener for DOM tree selection changes. | |
| (WebInspector.DOMTreeContentView.prototype.get selectionPathComponents): Added. Return path components for the DOM tree selection. | |
| (WebInspector.DOMTreeContentView.prototype._selectedNodeDidChange): Added. Fire the SelectionPathComponentsDidChange event. | |
| (WebInspector.DOMTreeContentView.prototype._pathComponentSelected): Added. Reveal and select the DOM tree element. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.isCloseTag): Added. | |
| * UserInterface/DOMTreeElementPathComponent.js: Added. | |
| (WebInspector.DOMTreeElementPathComponent): Added. | |
| (WebInspector.DOMTreeElementPathComponent.prototype.get domTreeElement): Added. | |
| (WebInspector.DOMTreeElementPathComponent.prototype.get previousSibling): Added. | |
| (WebInspector.DOMTreeElementPathComponent.prototype.get nextSibling): Added. Return null if isCloseTag. | |
| * UserInterface/Images/DOMCharacterData.pdf: Added. | |
| * UserInterface/Images/DOMComment.pdf: Added. | |
| * UserInterface/Images/DOMDocumentType.pdf: Added. | |
| * UserInterface/Images/DOMElement.pdf: Added. | |
| * UserInterface/Images/DOMNode.pdf: Added. | |
| * UserInterface/Images/DOMTextNode.pdf: Added. | |
| * UserInterface/Main.html: Included DOMTreeElementPathComponent.js. | |
| * UserInterface/PathComponentIcons.css: | |
| (.dom-element-icon .icon): Added. | |
| (.dom-text-node-icon .icon): Added. | |
| (.dom-comment-icon .icon): Added. | |
| (.dom-document-type-icon .icon): Added. | |
| (.dom-character-data-icon .icon): Added. | |
| (.dom-node-icon .icon): Added. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make link navigation work in the DOM tree. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMTreeContentView.js: | |
| (WebInspector.DOMTreeContentView): Add click event listener. | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked): Added. Start a timeout since this is a single | |
| click, if the timeout is canceled before it fires, then a double-click happened or another link was clicked. | |
| (WebInspector.DOMTreeContentView.prototype._mouseWasClicked.followLink): Added. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.onattach): Removed call to _preventFollowingLinksOnDoubleClick. | |
| (WebInspector.DOMTreeElement.prototype.updateTitle): Ditto. | |
| (WebInspector.DOMTreeElement.prototype._preventFollowingLinksOnDoubleClick): Removed. | |
| (WebInspector.DOMTreeElement.prototype._buildAttributeDOM): Removed linkify parameter and remove dependency on | |
| WebInspector.resourceURLForRelatedNode by making the anchor element directly. | |
| (WebInspector.DOMTreeElement.prototype._buildTagDOM): Removed linkify parameter. | |
| (WebInspector.DOMTreeElement.prototype._nodeTitleInfo): Ditto. | |
| * UserInterface/Utilities.js: | |
| (String.prototype.trimMiddle): Added. | |
| (String.prototype.trimEnd): Added. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Remove dependency on WebInspector.DOMSyntaxHighlighter and make style and script DOM nodes syntax highlighted | |
| by using WebInspector.SyntaxHighlighter. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._nodeTitleInfo): Use WebInspector.syntaxHighlightStringAsDocumentFragment | |
| instead of WebInspector.DOMSyntaxHighlighter. Also syntax highlight inline script and style text nodes. | |
| * UserInterface/DOMTreeOutline.css: | |
| (.dom-tree-outline .html-text-node.large): Added. Used for large text blocks, making viewing/editing more pleasant. | |
| * UserInterface/SyntaxHighlighter.js: | |
| (WebInspector.SyntaxHighlighter.prototype.synchronousHighlight): Added dontChunk parameter and fix undefined/null checks. | |
| (WebInspector.SyntaxHighlighter.prototype.startHighlighting): Fix undefined/null checks | |
| (WebInspector.SyntaxHighlighter.prototype._highlightNextChunk): Added dontChunk parameter and don't bail early if it is set. | |
| * UserInterface/SyntaxHighlightingSupport.js: | |
| (WebInspector.syntaxHighlightStringAsDocumentFragment): Added. Creates a TextContent and syntax highlights it and returns | |
| the document fragment. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Break out the code for creating a syntax highlighted document fragment so it can be used | |
| by the DOM tree for inline CSS and JavaScript. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SyntaxHighlightingSupport.js: Added. | |
| (WebInspector.createSyntaxHighlightedDocumentFragment): Copied from WebInspector.TextEditorTextChunk.prototype.updateContent. | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.appendText): Ditto. | |
| (WebInspector.createSyntaxHighlightedDocumentFragment.createTokenElement): Ditto. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent): Use WebInspector.createSyntaxHighlightedDocumentFragment. | |
| * UserInterface/Main.html: Included SyntaxHighlightingSupport.js. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Remove references to the Elements panel and make the context menu work in the DOM tree. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.selectOnMouseDown): Removed elements panel code. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): Remove showInElementsPanelEnabled parameter. | |
| (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired): Removed elements panel code and call populateContextMenu. | |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): Removed call to populateHrefContextMenu which doesn't exist. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Style and syntax highlight the DOM tree elements. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/DOMTreeElement.js: Found and replaced "webkit-" with "" to fix the syntax highlighting class names. | |
| * UserInterface/DOMTreeOutline.css: Added. | |
| (.dom-tree-outline): | |
| (.dom-tree-outline li.hovered:not(.selected) .selection): | |
| (.dom-tree-outline li .selection): | |
| (.dom-tree-outline li.selected .selection): | |
| (.dom-tree-outline li.elements-drag-over .selection): | |
| (.dom-tree-outline:focus li.selected .selection): | |
| (.dom-tree-outline, .dom-tree-outline ol): | |
| (.dom-tree-outline ol.children): | |
| (.dom-tree-outline ol.children.expanded): | |
| (.dom-tree-outline li): | |
| (.dom-tree-outline:focus li.selected): | |
| (.dom-tree-outline:focus li.selected *): | |
| (.dom-tree-outline li.parent): | |
| (.dom-tree-outline li .html-tag.close): | |
| (.dom-tree-outline li.parent::before): | |
| (.dom-tree-outline:focus li.parent.selected::before): | |
| (.dom-tree-outline li.parent.expanded::before): | |
| (.dom-tree-outline:focus li.parent.expanded.selected::before): | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline): Set the dom-tree-outline and syntax-highlighted class names. | |
| (WebInspector.DOMTreeOutline.prototype.populateContextMenu): Found and replaced "webkit-" with "" to fix the | |
| syntax highlighting class names. | |
| * UserInterface/Main.html: Included DOMTreeOutline.css. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make it possible to share the syntax highlighting styles with the DOM tree. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.html: | |
| * UserInterface/SyntaxHighlightingDefaultTheme.css: Renamed from Safari/Develop/WebInspector/TextEditorDefaultTheme.css. | |
| Found and replaced .text-editor with .syntax-highlighted. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Add the syntax-highlighted class name to the content container. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DOMTreeContentView and have it as a second view available in WebInspector.FrameContentView. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Added support for WebInspector.DOMTree. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/DOMTreeContentView.css: Added. | |
| (.content-view.dom-tree): | |
| * UserInterface/DOMTreeContentView.js: Added. | |
| (WebInspector.DOMTreeContentView): Create the DOMTreeOutline and request the root DOMNode. | |
| (WebInspector.DOMTreeContentView.prototype.get domTree): Return _domTree. | |
| (WebInspector.DOMTreeContentView.prototype.shown): Call setVisible on the DOMTreeOutline. | |
| (WebInspector.DOMTreeContentView.prototype.hidden): Ditto. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeAvailable): Set the rootDOMNode on DOMTreeOutline. | |
| (WebInspector.DOMTreeContentView.prototype._rootDOMNodeDidChange): Request the root DOMNode. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView): Create the DOM tree path component. | |
| (WebInspector.FrameContentView.prototype._pathComponentForContentView): Return the DOM tree patch component | |
| for DOMTree represented objects. | |
| (WebInspector.FrameContentView.prototype._showContentViewForIdentifier): Use the DOMTree of the frame. | |
| * UserInterface/Images/DOMTree.pdf: Added. | |
| * UserInterface/Main.html: Included DOMTreeContentView.{js,css}. | |
| * UserInterface/PathComponentIcons.css: | |
| (.dom-tree-icon .icon): Added. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Add support for getting the DOM tree for a specific WebInspector.Frame. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/DOMTree.js: Added. | |
| (WebInspector.DOMTree): | |
| (WebInspector.DOMTree.prototype.invalidate): Delay the invalidation on a timeout to coalesce multiple calls to invalidate. | |
| (WebInspector.DOMTree.prototype.invalidate.performInvalidate): Do the work to invalidate. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode): Get window.frameElement or document from the desired frame. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootObjectAvailable): Convert the RemoteObject to a DOMNode. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.rootDOMNodeAvailable): Get the child nodes before calling the callbacks. | |
| (WebInspector.DOMTree.prototype.requestRootDOMNode.dispatchCallbacks): Helper to dispatch pending callbacks. | |
| (WebInspector.DOMTree.prototype._nodeRemoved): Call invalidate if the node is the root node. | |
| (WebInspector.DOMTree.prototype._documentUpdated): Call invalidate. | |
| (WebInspector.DOMTree.prototype._frameMainResourceDidChange): Ditto. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.get domTree): Added. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Remove dependency on Preferences.maxInlineTextChildLength from WebInspector.DOMTreeElement. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.MaximumInlineTextChildLength): Added. | |
| (WebInspector.DOMTreeElement.prototype._nodeTitleInfo): Use WebInspector.DOMTreeElement.MaximumInlineTextChildLength. | |
| (WebInspector.DOMTreeElement.prototype._showInlineText): Ditto. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Use WebInspector.DOMNode instead of WebInspector.DOMDocument since we don't have DOMDocument | |
| in the new Web Inspector. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMNode.js: | |
| (WebInspector.DOMNode): Set ownerDocument to this when this is a document node. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._setDocument): Use DOMNode instead of DOMDocument. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Update DOMTreeElement to correctly use the new non-formating WebInspector.UIString. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype._createTooltipForNode.setTooltip): Use format() after UIString. | |
| (WebInspector.DOMTreeElement.prototype.adjustCollapsedRange): Ditto. | |
| (WebInspector.DOMTreeElement.prototype._populateTagContextMenu): Removed WebInspector.useLowerCaseMenuTitles() use. | |
| (WebInspector.DOMTreeElement.prototype._populateTextContextMenu): Ditto. | |
| (WebInspector.DOMTreeElement.prototype._populateNodeContextMenu): Ditto. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Replace {add,remove,has}StyleClass in DOMTree{Element,Outline} with classList.{add,remove,contains}. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.ElementsTreeElement.prototype.set hovered): | |
| (WebInspector.ElementsTreeElement.prototype.onattach): | |
| (WebInspector.ElementsTreeElement.prototype._triggerEditAttribute): | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.ElementsTreeOutline.prototype._ondragover): | |
| (WebInspector.ElementsTreeOutline.prototype._clearDragOverTreeElementMarker): | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Remove dependancy on WebInspector.Color from WebInspector.DOMTreeManager. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._buildHighlightConfig): Include the colors directly. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make WebInspector.DOMTreeUpdater listen for events on the correct object. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater): Use DOMTreeManager instead of the old DOMAgent name. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make WebInspector.DOMTreeOutline conform to the right style for objects with events. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._selectedNodeChanged): | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Make WebInspector.DOMTreeManager events conform to the style we use in the new Web Inspector. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager.prototype._attributeModified): Use WebInspector.DOMTreeManager.Event and spell out Attribute. | |
| (WebInspector.DOMTreeManager.prototype._attributeRemoved): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._loadNodeAttributes): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._characterDataModified): WebInspector.DOMTreeManager.Event. | |
| (WebInspector.DOMTreeManager.prototype._setDocument): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._childNodeCountUpdated): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._childNodeInserted): Ditto. | |
| (WebInspector.DOMTreeManager.prototype._childNodeRemoved): Ditto. | |
| (WebInspector.DOMTreeManager.prototype.inspectElement): Ditto. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Don't call InspectorBackend.registerDOMDispatcher from WebInspector.DOMTreeManager. | |
| The new Web Inspector calls InspectorBackend.registerDOMDispatcher from Main.js. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMTreeManager.js: | |
| (WebInspector.DOMTreeManager): Remove call to InspectorBackend.registerDOMDispatcher. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Wire up WebInspector.DOMObserver to WebInspector.DOMTreeManager. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/DOMObserver.js: | |
| (WebInspector.DOMObserver.prototype.documentUpdated): | |
| (WebInspector.DOMObserver.prototype.setChildNodes): | |
| (WebInspector.DOMObserver.prototype.attributeModified): | |
| (WebInspector.DOMObserver.prototype.attributeRemoved): | |
| (WebInspector.DOMObserver.prototype.inlineStyleInvalidated): | |
| (WebInspector.DOMObserver.prototype.characterDataModified): | |
| (WebInspector.DOMObserver.prototype.childNodeCountUpdated): | |
| (WebInspector.DOMObserver.prototype.childNodeInserted): | |
| (WebInspector.DOMObserver.prototype.childNodeRemoved): | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Use WebInspector.domTreeManager instead of the old WebInspector.domAgent. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: | |
| (WebInspector.DOMTreeElement.prototype.onselect): | |
| (WebInspector.DOMTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback): | |
| (WebInspector.DOMTreeElement.prototype._tagNameEditingCommitted): | |
| * UserInterface/DOMTreeOutline.js: | |
| (WebInspector.DOMTreeOutline.prototype._onmousemove): | |
| (WebInspector.DOMTreeOutline.prototype._onmouseout): | |
| (WebInspector.DOMTreeOutline.prototype._ondragstart): | |
| (WebInspector.DOMTreeOutline.prototype._ondrop.callback): | |
| (WebInspector.DOMTreeOutline.prototype._ondrop): | |
| (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired.focusElement): | |
| (WebInspector.DOMTreeOutline.prototype._contextMenuEventFired): | |
| * UserInterface/DOMTreeUpdater.js: | |
| (WebInspector.DOMTreeUpdater.prototype._reset): | |
| * UserInterface/RemoteObject.js: | |
| (WebInspector.RemoteObject.prototype.pushNodeToFrontend): | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Create a WebInspector.DOMTreeManager instance. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a WebInspector.DOMTreeManager instance. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Rename WebInspector.ElementsTree{Outline,Element,Updater} to WebInspector.DOMTree{Outline,Element,Updater}. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: Found and replaced WebInspector.ElementsTree with WebInspector.DOMTree. | |
| * UserInterface/DOMTreeOutline.js: Ditto. | |
| * UserInterface/DOMTreeUpdater.js: Ditto. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Rename WebInspector.DOMAgent to WebInspector.DOMTreeManager. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeManager.js: Found and replaced WebInspector.DOMAgent with WebInspector.DOMTreeManager. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Copy over WebInspector.ElementsTree{Outline,Element,Updater} from Open Source. | |
| Copied into DOMTreeElement.js, DOMTreeOutline.js and DOMTreeUpdater.js since the classes will | |
| soon be renamed to WebInspector.DOMTree{Outline,Element,Updater}. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeElement.js: Added. | |
| (WebInspector.ElementsTreeElement): | |
| (WebInspector.ElementsTreeElement.prototype.highlightSearchResults): | |
| (WebInspector.ElementsTreeElement.prototype.hideSearchHighlights): | |
| (WebInspector.ElementsTreeElement.prototype._updateSearchHighlight.updateEntryShow): | |
| (WebInspector.ElementsTreeElement.prototype._updateSearchHighlight.updateEntryHide): | |
| (WebInspector.ElementsTreeElement.prototype._updateSearchHighlight): | |
| (WebInspector.ElementsTreeElement.prototype.get hovered): | |
| (WebInspector.ElementsTreeElement.prototype.set hovered): | |
| (WebInspector.ElementsTreeElement.prototype.get expandedChildrenLimit): | |
| (WebInspector.ElementsTreeElement.prototype.set expandedChildrenLimit): | |
| (WebInspector.ElementsTreeElement.prototype.get expandedChildCount): | |
| (WebInspector.ElementsTreeElement.prototype.showChild): | |
| (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip): | |
| (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode.dimensions): | |
| (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode): | |
| (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): | |
| (WebInspector.ElementsTreeElement.prototype.updateSelection): | |
| (WebInspector.ElementsTreeElement.prototype.onattach): | |
| (WebInspector.ElementsTreeElement.prototype._preventFollowingLinksOnDoubleClick): | |
| (WebInspector.ElementsTreeElement.prototype.onpopulate): | |
| (WebInspector.ElementsTreeElement.prototype.updateChildren): | |
| (WebInspector.ElementsTreeElement.prototype.insertChildElement): | |
| (WebInspector.ElementsTreeElement.prototype.moveChild): | |
| (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode): | |
| (WebInspector.ElementsTreeElement.prototype._updateChildren): | |
| (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange): | |
| (WebInspector.ElementsTreeElement.prototype.handleLoadAllChildren): | |
| (WebInspector.ElementsTreeElement.prototype.onexpand): | |
| (WebInspector.ElementsTreeElement.prototype.oncollapse): | |
| (WebInspector.ElementsTreeElement.prototype.onreveal): | |
| (WebInspector.ElementsTreeElement.prototype.onselect): | |
| (WebInspector.ElementsTreeElement.prototype.ondelete): | |
| (WebInspector.ElementsTreeElement.prototype.onenter): | |
| (WebInspector.ElementsTreeElement.prototype.selectOnMouseDown): | |
| (WebInspector.ElementsTreeElement.prototype.ondblclick): | |
| (WebInspector.ElementsTreeElement.prototype._insertInLastAttributePosition): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTarget): | |
| (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): | |
| (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu): | |
| (WebInspector.ElementsTreeElement.prototype._populateNodeContextMenu): | |
| (WebInspector.ElementsTreeElement.prototype._startEditing): | |
| (WebInspector.ElementsTreeElement.prototype._addNewAttribute): | |
| (WebInspector.ElementsTreeElement.prototype._triggerEditAttribute): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingAttribute.removeZeroWidthSpaceRecursive): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingAttribute): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTextNode): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTagName.keyupListener): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTagName.editingComitted): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTagName.editingCancelled): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingTagName): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML.commit): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML.dispose): | |
| (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML): | |
| (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.moveToNextAttributeIfNeeded): | |
| (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted): | |
| (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.cancel): | |
| (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded): | |
| (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.changeTagNameCallback): | |
| (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted): | |
| (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted): | |
| (WebInspector.ElementsTreeElement.prototype._editingCancelled): | |
| (WebInspector.ElementsTreeElement.prototype._distinctClosingTagElement): | |
| (WebInspector.ElementsTreeElement.prototype.updateTitle): | |
| (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM): | |
| * UserInterface/DOMTreeOutline.js: Added. | |
| (WebInspector.ElementsTreeOutline): | |
| (WebInspector.ElementsTreeOutline.prototype.wireToDomAgent): | |
| (WebInspector.ElementsTreeOutline.prototype.setVisible): | |
| (WebInspector.ElementsTreeOutline.prototype.addEventListener): | |
| (WebInspector.ElementsTreeOutline.prototype.removeEventListener): | |
| (WebInspector.ElementsTreeOutline.prototype.get rootDOMNode): | |
| (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode): | |
| (WebInspector.ElementsTreeOutline.prototype.get isXMLMimeType): | |
| (WebInspector.ElementsTreeOutline.prototype.selectedDOMNode): | |
| (WebInspector.ElementsTreeOutline.prototype.selectDOMNode): | |
| (WebInspector.ElementsTreeOutline.prototype.get editing): | |
| (WebInspector.ElementsTreeOutline.prototype.update): | |
| (WebInspector.ElementsTreeOutline.prototype.updateSelection): | |
| (WebInspector.ElementsTreeOutline.prototype._selectedNodeChanged): | |
| (WebInspector.ElementsTreeOutline.prototype.findTreeElement): | |
| (WebInspector.ElementsTreeOutline.prototype.findTreeElement.parentNode): | |
| (WebInspector.ElementsTreeOutline.prototype.createTreeElementFor): | |
| (WebInspector.ElementsTreeOutline.prototype.set suppressRevealAndSelect): | |
| (WebInspector.ElementsTreeOutline.prototype._revealAndSelectNode): | |
| (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent): | |
| (WebInspector.ElementsTreeOutline.prototype._onmousedown): | |
| (WebInspector.ElementsTreeOutline.prototype._onmousemove): | |
| (WebInspector.ElementsTreeOutline.prototype._onmouseout): | |
| (WebInspector.ElementsTreeOutline.prototype._ondragstart): | |
| (WebInspector.ElementsTreeOutline.prototype._ondragover): | |
| (WebInspector.ElementsTreeOutline.prototype._ondragleave): | |
| (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget): | |
| (WebInspector.ElementsTreeOutline.prototype._ondrop.callback): | |
| (WebInspector.ElementsTreeOutline.prototype._ondrop): | |
| (WebInspector.ElementsTreeOutline.prototype._ondragend): | |
| (WebInspector.ElementsTreeOutline.prototype._clearDragOverTreeElementMarker): | |
| (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired.focusElement): | |
| (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): | |
| (WebInspector.ElementsTreeOutline.prototype.populateContextMenu): | |
| (WebInspector.ElementsTreeOutline.prototype.adjustCollapsedRange): | |
| (WebInspector.ElementsTreeOutline.prototype._updateModifiedNodes): | |
| (WebInspector.ElementsTreeOutline.prototype._populateContextMenu): | |
| * UserInterface/DOMTreeUpdater.js: Added. | |
| (WebInspector.ElementsTreeUpdater): | |
| (WebInspector.ElementsTreeUpdater.prototype._documentUpdated): | |
| (WebInspector.ElementsTreeUpdater.prototype._attributesUpdated): | |
| (WebInspector.ElementsTreeUpdater.prototype._characterDataModified): | |
| (WebInspector.ElementsTreeUpdater.prototype._nodeInserted): | |
| (WebInspector.ElementsTreeUpdater.prototype._nodeRemoved): | |
| (WebInspector.ElementsTreeUpdater.prototype._childNodeCountUpdated): | |
| (WebInspector.ElementsTreeUpdater.prototype._updateModifiedNodesSoon): | |
| (WebInspector.ElementsTreeUpdater.prototype._updateModifiedNodes): | |
| (WebInspector.ElementsTreeUpdater.prototype._reset): | |
| * UserInterface/Main.html: Included DOMTree{Outline,Element,Updater}.js. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Copy over WebInspector.DOMAgent from Open Source. | |
| Copied into DOMTreeManager.js since WebInspector.DOMAgent will soon be renamed to WebInspector.DOMTreeManager. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMTreeManager.js: Copied from OpenSource/Source/WebCore/inspector/front-end/DOMAgent.js. | |
| (WebInspector.DOMAgent): | |
| (WebInspector.DOMAgent.prototype.requestDocument.onDocumentAvailable): | |
| (WebInspector.DOMAgent.prototype.requestDocument): | |
| (WebInspector.DOMAgent.prototype.pushNodeToFrontend): | |
| (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend): | |
| (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable): | |
| (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable): | |
| (WebInspector.DOMAgent.prototype._attributeModified): | |
| (WebInspector.DOMAgent.prototype._attributeRemoved): | |
| (WebInspector.DOMAgent.prototype._inlineStyleInvalidated): | |
| (WebInspector.DOMAgent.prototype._loadNodeAttributes): | |
| (WebInspector.DOMAgent.prototype._characterDataModified): | |
| (WebInspector.DOMAgent.prototype.nodeForId): | |
| (WebInspector.DOMAgent.prototype._documentUpdated): | |
| (WebInspector.DOMAgent.prototype._setDocument): | |
| (WebInspector.DOMAgent.prototype._setDetachedRoot): | |
| (WebInspector.DOMAgent.prototype._setChildNodes): | |
| (WebInspector.DOMAgent.prototype._bindNodes): | |
| (WebInspector.DOMAgent.prototype._childNodeCountUpdated): | |
| (WebInspector.DOMAgent.prototype._childNodeInserted): | |
| (WebInspector.DOMAgent.prototype._childNodeRemoved): | |
| (WebInspector.DOMAgent.prototype.inspectElement): | |
| (WebInspector.DOMAgent.prototype.performSearch.callback): | |
| (WebInspector.DOMAgent.prototype.performSearch): | |
| (WebInspector.DOMAgent.prototype.searchResult.mycallback): | |
| (WebInspector.DOMAgent.prototype.searchResult): | |
| (WebInspector.DOMAgent.prototype.cancelSearch): | |
| (WebInspector.DOMAgent.prototype.querySelector): | |
| (WebInspector.DOMAgent.prototype.querySelectorAll): | |
| (WebInspector.DOMAgent.prototype.highlightDOMNode): | |
| (WebInspector.DOMAgent.prototype.hideDOMNodeHighlight): | |
| (WebInspector.DOMAgent.prototype.highlightDOMNodeForTwoSeconds): | |
| (WebInspector.DOMAgent.prototype.setInspectModeEnabled): | |
| (WebInspector.DOMAgent.prototype._buildHighlightConfig): | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Copy over WebInspector.DOMNode from Open Source. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/DOMNode.js: Copied from OpenSource/Source/WebCore/inspector/front-end/DOMAgent.js. | |
| (WebInspector.DOMNode): | |
| (WebInspector.DOMNode.prototype.hasAttributes): | |
| (WebInspector.DOMNode.prototype.hasChildNodes): | |
| (WebInspector.DOMNode.prototype.nodeType): | |
| (WebInspector.DOMNode.prototype.nodeName): | |
| (WebInspector.DOMNode.prototype.nodeNameInCorrectCase): | |
| (WebInspector.DOMNode.prototype.setNodeName): | |
| (WebInspector.DOMNode.prototype.localName): | |
| (WebInspector.DOMNode.prototype.nodeValue): | |
| (WebInspector.DOMNode.prototype.setNodeValue): | |
| (WebInspector.DOMNode.prototype.getAttribute): | |
| (WebInspector.DOMNode.prototype.setAttribute): | |
| (WebInspector.DOMNode.prototype.setAttributeValue): | |
| (WebInspector.DOMNode.prototype.attributes): | |
| (WebInspector.DOMNode.prototype.removeAttribute): | |
| (WebInspector.DOMNode.prototype.getChildNodes.mycallback): | |
| (WebInspector.DOMNode.prototype.getChildNodes): | |
| (WebInspector.DOMNode.prototype.getOuterHTML): | |
| (WebInspector.DOMNode.prototype.setOuterHTML): | |
| (WebInspector.DOMNode.prototype.removeNode): | |
| (WebInspector.DOMNode.prototype.copyNode): | |
| (WebInspector.DOMNode.prototype.eventListeners): | |
| (WebInspector.DOMNode.prototype.path): | |
| (WebInspector.DOMNode.prototype.appropriateSelectorFor): | |
| (WebInspector.DOMNode.prototype.isAncestor): | |
| (WebInspector.DOMNode.prototype.isDescendant): | |
| (WebInspector.DOMNode.prototype._setAttributesPayload): | |
| (WebInspector.DOMNode.prototype._insertChild): | |
| (WebInspector.DOMNode.prototype._removeChild): | |
| (WebInspector.DOMNode.prototype._setChildrenPayload): | |
| (WebInspector.DOMNode.prototype._renumber): | |
| (WebInspector.DOMNode.prototype._addAttribute): | |
| (WebInspector.DOMNode.prototype._setAttribute): | |
| (WebInspector.DOMNode.prototype._removeAttribute): | |
| (WebInspector.DOMNode.prototype.ownerDocumentElement): | |
| (WebInspector.DOMNode.prototype.moveTo): | |
| (WebInspector.DOMNode.prototype.isXMLNode): | |
| * UserInterface/Main.html: Included DOMNode.js. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Copy over WebInspector.RemoteObject from Open Source. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/Main.html: Included RemoteObject.js. | |
| * UserInterface/RemoteObject.js: Copied from OpenSource/Source/WebCore/inspector/front-end/RemoteObject.js. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Copy over WebInspector.ContextMenu from Open Source. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/ContextMenu.js: Copied from OpenSource/Source/WebCore/inspector/front-end/ContextMenu.js. | |
| * UserInterface/Main.html: Included ContextMenu.js. | |
| 2012-01-16 Timothy Hatcher <timothy@apple.com> | |
| Rename TreeElementHierarchicalPathComponent.js to GeneralTreeElementPathComponent.js. | |
| It always dealt with GeneralTreeElements from the start, not TreeElements. This makes it clear | |
| that is can't be used with other TreeElement subclasses (like DOMTreeElement). | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype._updateHierarchicalPathNavigationItem): Use GeneralTreeElementPathComponent. | |
| (WebInspector.ContentBrowser.prototype._hierarchicalPathComponentWasSelected): Ditto. | |
| * UserInterface/GeneralTreeElementPathComponent.js: Renamed from TreeElementHierarchicalPathComponent.js. | |
| * UserInterface/Main.html: Renamed TreeElementHierarchicalPathComponent.js to GeneralTreeElementPathComponent.js. | |
| 2012-01-14 Timothy Hatcher <timothy@apple.com> | |
| Prevent deselection of frames in the Resources sidebar when they navigate, or when resources redirect. | |
| When a frame navigates or a resource redirects we remove it from the tree and reinsert it at the correct | |
| sort order based on the new URL. When the tree element was removed we would automatically select a sibling. | |
| This uses new TreeOutline support to suppress notifying select/deselect listeners so the temporary removal | |
| is not noticed, so the content view does not change briefly. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype._addTreeElement): | |
| (WebInspector.FrameTreeElement.prototype._removeTreeElement): | |
| 2012-01-14 Timothy Hatcher <timothy@apple.com> | |
| Add more support for suppressing the select and deselect events in TreeOutline. This also fixes | |
| a typo where suppress was pervasively misspelled. | |
| This is needed to prevent changing views when a tree element in the Resources sidebar moves to a folder. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline.prototype.removeChildAtIndex): Added suppressOnDeselect and suppressSelectSibling. | |
| (TreeOutline.prototype.removeChild): Ditto. | |
| (TreeOutline.prototype.removeChildren): Added suppressOnDeselect. | |
| (TreeOutline.prototype.removeChildrenRecursive): Ditto. | |
| (TreeElement.prototype.select): Added suppressOnSelect and suppressOnDeselect. | |
| (TreeElement.prototype.revealAndSelect): Added the same parameters as select. | |
| 2012-01-11 Timothy Hatcher <timothy@apple.com> | |
| Make DataGrid use CSS gradients for headers instead of images. | |
| Part of: <rdar://problem/10643175> DataGrid should be HiDPI compliant | |
| Reviewed by Jing Jin. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid th): | |
| (.data-grid th:first-child): | |
| (.data-grid th:active:first-child): | |
| (.data-grid th:last-child): | |
| (.data-grid th:active:last-child): | |
| (.data-grid table.data): | |
| (.data-grid td): | |
| (.data-grid td:last-child): | |
| (.data-grid th.sortable:active): | |
| (.data-grid th.sort-ascending, .data-grid th.sort-descending): | |
| (.data-grid th.sortable.sort-ascending:active, .data-grid th.sortable.sort-descending:active): | |
| (.data-grid th.sort-descending + th): | |
| (.data-grid th.sort-descending + th:active): | |
| (.data-grid th.sort-descending:first-child): | |
| (.data-grid th.sort-descending:last-child): | |
| (body.inactive .data-grid th.sort-ascending, body.inactive .data-grid th.sort-descending): | |
| * UserInterface/Images/glossyHeader.png: Removed. | |
| * UserInterface/Images/glossyHeaderPressed.png: Removed. | |
| * UserInterface/Images/glossyHeaderSelected.png: Removed. | |
| * UserInterface/Images/glossyHeaderSelectedPressed.png: Removed. | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Improve appearance of DataGrid in the new Web Inspector. | |
| This removes the extra border and outline around the DOM Storage and Cookie Storage content views. | |
| The empty gutter on the right is also removed now that OS X has overlay scrollers. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CookieStorageContentView.css: | |
| (.content-view.cookie-storage > .data-grid): Set border and outline to none. | |
| * UserInterface/DOMStorageContentView.css: | |
| (.content-view.dom-storage > .data-grid): Ditto. | |
| * UserInterface/DataGrid.css: | |
| (.data-grid .data-container): Remove padding-right. | |
| (.data-grid th:last-child): Added. Remove right border and set padding-right to give room for the scroller. | |
| (.data-grid td:last-child): Added. Ditto. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid): Removed the corder cell since it ins't needed to make room for the scroller anymore. | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Add utility functions needed by the DOM tree code. | |
| Part of: <rdar://problem/10663163> Implement the DOM Tree content view | |
| Reviewed by John Sullivan. | |
| * UserInterface/Utilities.js: | |
| (Node.prototype.isAncestor): Copied from OpenSource/Source/WebCore/inspector/front-end/utilities.js. | |
| (Node.prototype.isDescendant): Ditto. | |
| (Element.prototype.createChild): Ditto. | |
| (DocumentFragment.prototype.createChild): Ditto. | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Fix a case where Element.totalOffsetLeft is used as a function instead of a property. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype.isEventWithinDisclosureTriangle): Don't call totalOffsetLeft as a function. | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Make events dispatch to listeners on all constructors up the prototype chain, not just immediate constructor. | |
| This is needed so subclasses of ContentView can dispatch events to listeners without the need for them to listen | |
| on the concrete ContentView subclasses. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Object.js: | |
| (WebInspector.Object.prototype.dispatchEventToListeners): | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Make clicking of links for main resources of frames navigate to those resources. Before this only subresources | |
| were navigable and clicking a main resource link would open a new Safari window instead of showing the source. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.resourceForURL): Check the main resources of the child frames for the requested URL. | |
| 2012-01-10 Timothy Hatcher <timothy@apple.com> | |
| Allow repeated selection of tree elements in the Storage panel (and all future NavigationSidebarPanels.) | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Set this._contentTreeOutline.allowsRepeatSelection to true. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Moved this.contentTreeOutline.allowsRepeatSelection = true from here | |
| to WebInspector.NavigationSidebarPanel. | |
| 2012-01-12 Timothy Hatcher <timothy@apple.com> | |
| Exclude Web Inspector strings from localizedStrings.js until they can be included | |
| in Production builds. | |
| Reviewed by Darin Adler. | |
| * UserInterface/Main.js: | |
| (WebInspector.UIString): Always return the string until we can actually do the lookup. | |
| * English.lproj/localizedStrings.js: Updated to exclude Web Inspector strings. | |
| 2012-01-11 Brian Weinstein <bweinstein@apple.com> | |
| Rest of <rdar://problem/10643012> Implement Database content views for new inspector design. | |
| Implement custom views for when a database table is empty, or when there was an error | |
| loading the data. | |
| If a table is empty, we don't get a list of column names, and can't show an empty data grid. | |
| If there was an error, we also can't show a data grid because we don't know anything about | |
| the table. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseTableContentView.js: | |
| (WebInspector.DatabaseTableContentView.prototype._queryFinished): If we were unable to create | |
| a data grid, the table was empty, so call createMessageTextView. | |
| (WebInspector.DatabaseTableContentView.prototype._queryError): Call createMessageTextView. | |
| * UserInterface/Main.css: | |
| (.message-text-view, message-text-view > p, message-text-view.error): Added styles for createMessageTextView. | |
| * UserInterface/Main.js: | |
| (WebInspector.createMessageTextView): Creates a view and returns it to the caller. | |
| * English.lproj/localizedStrings.js: | |
| 2012-01-11 Brian Weinstein <bweinstein@apple.com> | |
| Clear database table views when the page navigates. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| 2012-01-11 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643012> Implement Database content views for new inspector design. | |
| Implement the DataGrid for database tables. | |
| This patch adds the ability to be able to execute SQL queries on a DatabaseObject, and DatabaseContentView | |
| uses that to get the data from the selected table. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseObject.js: | |
| (WebInspector.DatabaseObject.prototype.executeSQL): Call through to DatabaseAgent.executeSQL. | |
| * UserInterface/DatabaseObserver.js: Add a map from transaction ID -> callbacks to be able to do the right | |
| thing when sqlTransactionSucceeded or sqlTransactionFailed is called. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionSucceeded): Call the onSuccess callback for that | |
| transaction ID. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionFailed): Call the onError callback for that transaction | |
| ID. | |
| * UserInterface/DatabaseTableContentView.css: Added. | |
| (.content-view.database-table > .data-grid): | |
| * UserInterface/DatabaseTableContentView.js: | |
| (WebInspector.DatabaseTableContentView): Call update. | |
| (WebInspector.DatabaseTableContentView.prototype.constructor.WebInspector.DatabaseTableContentView.update): Get the | |
| data from the table. | |
| (WebInspector.DatabaseTableContentView.prototype._escapeTableName): Taken from open source. | |
| (WebInspector.DatabaseTableContentView.prototype._queryFinished): Create a sortable data grid with the column names | |
| and the values returned from the SQL call. | |
| (WebInspector.DatabaseTableContentView.prototype._queryError): Added a FIXME to handle the error. | |
| * UserInterface/Main.html: | |
| 2012-01-10 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643012> Implement Database content views for new inspector design. | |
| Add a content view for database tables. It is currently empty, but a datagrid will be added that | |
| will show the correct data. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): | |
| (WebInspector.ContentView.isViewable): | |
| * UserInterface/DatabaseTableContentView.js: Added. | |
| (WebInspector.DatabaseTableContentView): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): | |
| 2012-01-10 Brian Weinstein <bweinstein@apple.com> | |
| Clear the DOM and cookie storage content views when we navigate. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| 2012-01-10 Brian Weinstein <bweinstein@apple.com> | |
| Rest of <rdar://problem/10642964> Implement Cookie content view for new web inspector design. | |
| Implement deleting of individual cookies. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype._rebuildTable): Add a delete callback. | |
| (WebInspector.CookieStorageContentView.prototype._deleteCallback): Delete the cookie. | |
| 2012-01-10 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10642964> Implement Cookie content view for new web inspector design. | |
| Implement the sorting of columns in the cookie data grid. | |
| The code to sort the array was brought from open source. The rest of the patch is some refactoring | |
| which makes the code more efficient. When we get the cookies from the PageAgent, we filter them, | |
| and store the filtered cookies as a property in the class. When the sorting order is changed, | |
| we just rebuild the table using the filtered cookies already stored, so we don't need to refilter | |
| them when the sorting order changed. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype.constructor.WebInspector.CookieStorageContentView.update): Store the filtered | |
| cookies as a property, then call rebuildTable. | |
| (WebInspector.CookieStorageContentView.prototype._rebuildTable): Don't take cookies as a parameter any more, and don't | |
| filter them. | |
| (WebInspector.CookieStorageContentView.prototype._sortCookies.localeCompare): Copied from open source. | |
| (WebInspector.CookieStorageContentView.prototype._sortCookies.numberCompare): Ditto. | |
| (WebInspector.CookieStorageContentView.prototype._sortCookies.expiresCompare): Ditto. | |
| (WebInspector.CookieStorageContentView.prototype._sortCookies): Ditto. | |
| * UserInterface/Utilities.js: | |
| (Object.defineProperty): Copied from open source. | |
| 2012-01-10 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10642964> Implement Cookie content view for new web inspector design. | |
| Filter the cookies that are shown for each domain that the page has loaded. This means that when | |
| you see the cookies for twitter.com, you will only see the twitter.com cookies, and not the doubleclick | |
| cookies that twitter might have loaded. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView.prototype._updateWithCookies): Use the filtered cookies. | |
| (WebInspector.CookieStorageContentView.prototype._filterCookies): Get a list of all the resources | |
| that are loaded with the CookieStorageContentView's host, and when looking at the document's cookies, | |
| only add the ones that match the host. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.get frames): Get the frames of the document. | |
| (WebInspector.cookieMatchesResourceURL): Brought over from open source. | |
| (WebInspector.cookieDomainMatchesResourceDomain): Ditto. | |
| 2012-01-09 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10642964> Implement Cookie content view for new web inspector design. | |
| Show a list of cookies on the page. It can't be sorted, and isn't filtered for the cookie host that | |
| you selected, but cookies do show up. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageContentView.css: Added. | |
| (.content-view.cookie-storage > .data-grid): The data grid takes up the whole view. | |
| * UserInterface/CookieStorageContentView.js: | |
| (WebInspector.CookieStorageContentView): Call update. | |
| (WebInspector.CookieStorageContentView.prototype.constructor.WebInspector.CookieStorageContentView.update): Get the cookies | |
| on the page, and then call _updateWithCookies on the result. | |
| (WebInspector.CookieStorageContentView.prototype._updateWithCookies): Create the data grid if it hasn't been created yet, and | |
| populate it. | |
| * UserInterface/Main.html: Add new file. | |
| * English.lproj/localizedStrings.js: Update localized string. | |
| 2012-01-09 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10642964> Implement Cookie content view for new web inspector design. | |
| Add a content view for cookie storage. It is currently empty, but a datagrid will be added that | |
| will show the correct data. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add a new case for CookieStorageObject, | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| * UserInterface/CookieStorageContentView.js: Added. | |
| (WebInspector.CookieStorageContentView): | |
| * UserInterface/Main.html: Add new files. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Add a new case for CookieStorageObject. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): Ditto. | |
| 2012-01-09 Brian Weinstein <bweinstein@apple.com> | |
| When we want to update the DOM storage data grid, don't remove the whole data grid and re-create it, | |
| just remove the DataGridNodes and regenerate those. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype.constructor.WebInspector.DOMStorageContentView.update): Don't remove the content | |
| view's children. | |
| (WebInspector.DOMStorageContentView.prototype._showDOMStorageEntries): Call _updateDataGridForDOMStorageEntries (which was renamed). | |
| (WebInspector.DOMStorageContentView.prototype._updateDataGridForDOMStorageEntries): Renamed. It also now only creates the data grid | |
| if necessary, and removes the children from the data grid before adding the new children. | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Rest towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Hook up editing of the DOM storage items. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype._dataGridForDOMStorageEntries): Add an editing callback. | |
| (WebInspector.DOMStorageContentView.prototype._editingCallback): Tell the DOMStorageObject about what | |
| item to modify. | |
| * UserInterface/DOMStorageObject.js: | |
| (WebInspector.DOMStorageObject.prototype.setItem): Call through to DOMStorageAgent. | |
| * UserInterface/Editing.css: Added. Copied some rules from inspector.css in Open Source. | |
| * UserInterface/EditingSupport.js: Added. Copied selected functions from Open Source UIUtils.js. | |
| * UserInterface/KeyboardShortcut.js: Added. | |
| * UserInterface/Main.html: Added new files. | |
| * UserInterface/Utilities.js: Copied isInsertionCaretInside from Open Source utilities.js, but made it | |
| a property. | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Implement DOMStorageObserver.updateDOMStorage, and have it call all the way through to calling | |
| update on the DOMStorageContentView. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager.prototype.domStorageWasUpdated): | |
| (WebInspector.StorageManager.prototype._mainResourceDidChange): | |
| (WebInspector.StorageManager.prototype._domStorageForId): | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Hook up the delete callback from the datagrid. When the delete key is pressed and a row is selected, | |
| that DOM storage item will be deleted. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView.prototype._dataGridForDOMStorageEntries): | |
| (WebInspector.DOMStorageContentView.prototype._deleteCallback): | |
| * UserInterface/DOMStorageObject.js: | |
| (WebInspector.DOMStorageObject.prototype.getEntries): | |
| (WebInspector.DOMStorageObject.prototype.removeItem): | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Make resizing columns work. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DataGrid.js: | |
| (WebInspector.DataGrid.prototype._resizerDragging): Change totalOffsetLeft to be a property instead of | |
| a function. This matches Utilities.js and code that we already have. | |
| (WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle): Ditto. | |
| * UserInterface/Main.js: | |
| (WebInspector.elementDragStart): Copied from Open Source. | |
| (WebInspector.elementDragEnd): Ditto. | |
| * UserInterface/Utilities.js: | |
| (Object.defineProperty): | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| We now show a data grid with the contents of the local or session storage. | |
| It's not editable, and you can't resize the columns yet, but that will come in | |
| the not too distant future. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DOMStorageContentView.css: Added. | |
| (.content-view.dom-storage > .data-grid): Make the data grid take up the whole content view. | |
| * UserInterface/DOMStorageContentView.js: | |
| (WebInspector.DOMStorageContentView): Call update. | |
| (WebInspector.DOMStorageContentView.prototype.constructor.WebInspector.DOMStorageContentView.update): Remove all children | |
| from the content view, and ask the DOM storage object for a list of entries, and pass _showDOMStorageEntries as a callback. | |
| (WebInspector.DOMStorageContentView.prototype._showDOMStorageEntries): Call _dataGridForDOMStorageEntries and add the data grid | |
| to the | |
| (WebInspector.DOMStorageContentView.prototype._dataGridForDOMStorageEntries): Create the data grid and populate it. | |
| * UserInterface/DOMStorageObject.js: | |
| (WebInspector.DOMStorageObject.prototype.isLocalStorage): | |
| (WebInspector.DOMStorageObject.prototype.getEntries): Ask for the entries for the DOM storage. | |
| * UserInterface/Main.html: Add the new CSS file. | |
| * English.lproj/localizedStrings.js: Update the localized strings. | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Clean up DataGrid by replacing (add|remove|has)StyleClass with classList.(add|remove|contains). | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DataGrid.js: | |
| 2012-01-06 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Add a content view for DOM storage. Currently it is just a blank view, but a datagrid will be | |
| added that will show the correct data. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add a new case for DOMStorageObject. | |
| (WebInspector.ContentView.isViewable): Ditto. | |
| (.content-view.dom-storage > .content-view-container): | |
| * UserInterface/DOMStorageContentView.js: Added. | |
| (WebInspector.DOMStorageContentView): | |
| * UserInterface/Main.html: | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): Add a listener for when a tree element is selected. | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| (WebInspector.StorageSidebarPanel.prototype._treeElementSelected): Install the content view. | |
| 2012-01-04 Brian Weinstein <bweinstein@apple.com> | |
| Work towards <rdar://problem/10643005> Implement DOM Storage content views for new inspector design. | |
| Add DataGrid JavaScript, CSS files, and necessary images to the internal project. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DataGrid.js: Added. This was copied from ToT Open Source, but the changes from | |
| http://trac.webkit.org/changeset/98225 and http://trac.webkit.org/changeset/98228 were rolled out, | |
| because we don't share the same concept of a WebInspector view. | |
| * UserInterface/Images/glossyHeader.png: Added. | |
| * UserInterface/Images/glossyHeaderPressed.png: Added. | |
| * UserInterface/Images/glossyHeaderSelected.png: Added. | |
| * UserInterface/Images/glossyHeaderSelectedPressed.png: Added. | |
| * UserInterface/Images/treeDownTriangleBlack.png: Added. | |
| * UserInterface/Images/treeDownTriangleWhite.png: Added. | |
| * UserInterface/Images/treeRightTriangleBlack.png: Added. | |
| * UserInterface/Images/treeRightTriangleWhite.png: Added. | |
| * UserInterface/Images/treeUpTriangleBlack.png: Added. | |
| * UserInterface/Main.html: Added new files. | |
| * UserInterface/dataGrid.css: Added. | |
| 2012-01-06 Timothy Hatcher <timothy@apple.com> | |
| Add a path component to WebInspector.FrameContentView that will eventually let you switch | |
| between Source Code and DOM Tree. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameContentView.js: | |
| (WebInspector.FrameContentView.createPathComponent): Added. Helper for making HierarchicalPathComponents. | |
| (WebInspector.FrameContentView): Create a Source Code path component. | |
| (WebInspector.FrameContentView.prototype.get selectionPathComponents): Added. Append the current view's path | |
| components to the path component representing the current view. | |
| (WebInspector.FrameContentView.prototype._pathComponentForContentView): Added. | |
| (WebInspector.FrameContentView.prototype._showContentViewForIdentifier): Added. | |
| (WebInspector.FrameContentView.prototype._pathComponentSelected): Added. | |
| * UserInterface/Images/SourceCode.pdf: Added. | |
| * UserInterface/Main.html: Included PathComponentIcons.css. | |
| * UserInterface/PathComponentIcons.css: Added. | |
| (.source-code-icon .icon): | |
| * English.lproj/localizedStrings.js: Updated. | |
| 2012-01-06 Timothy Hatcher <timothy@apple.com> | |
| Add support for path components in the Quick Navigation bar that represent the current selection in a content view. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView): Listen for CurrentContentViewDidChange and SelectionPathComponentsDidChange events. | |
| (WebInspector.ClusterContentView.prototype.get selectionPathComponents): Added. Forward the selectionPathComponents | |
| of the current view. | |
| (WebInspector.ClusterContentView.prototype._currentContentViewDidChange): Added. Dispatch SelectionPathComponentsDidChange event. | |
| (WebInspector.ClusterContentView.prototype._contentViewSelectionPathComponentDidChange): Added. Dispatch the | |
| SelectionPathComponentsDidChange event if the event target is our current content view. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Create a hierarchical path navigation item for the content view path components. | |
| (WebInspector.ContentBrowser.prototype._updateContentViewSelectionPathNavigationItem): Added. Remove and insert the navigation | |
| item if needed and update the components. | |
| (WebInspector.ContentBrowser.prototype._contentViewSelectionPathComponentDidChange): Added. Call _updateContentViewSelectionPathNavigationItem. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Call _updateContentViewSelectionPathNavigationItem. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.get selectionPathComponents): Added stub. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path:not(.always-show-last-path-component-separator) > .hierarchical-path-component:last-of-type > .separator): Added | |
| the :not(.always-show-last-path-component-separator) part so so prevent hiding the separator in that case. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.get alwaysShowLastPathComponentSeparator): Added. | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set alwaysShowLastPathComponentSeparator): Added. | |
| 2012-01-05 Timothy Hatcher <timothy@apple.com> | |
| Fix a regression from r39746 where link navigation between Web Inspector resource broke. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.openURL): Use contentBrowser instead of the now removed contentViewContainer. | |
| Also show the frame for main resources instead of the resource itself. | |
| 2012-01-05 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue where host names for frames where not shown when they differ from the frame that includes them. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.isMainResource): Added. Helper function. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): When the resource is a main resource, get the | |
| host from the parent frame instead of the current frame. | |
| 2012-01-05 Timothy Hatcher <timothy@apple.com> | |
| Add support for intra-view back/forward navigation. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ClusterContentView.js: | |
| (WebInspector.ClusterContentView.prototype.canGoBack): Added. Call through to the content view container. | |
| (WebInspector.ClusterContentView.prototype.canGoForward): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype.goBack): Added. Ditto. | |
| (WebInspector.ClusterContentView.prototype.goForward): Added. Ditto. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser.prototype.canGoBack): Added. Check the current content view first. | |
| (WebInspector.ContentBrowser.prototype.canGoForward): Added. Check the current content view first. | |
| (WebInspector.ContentBrowser.prototype.goBack): Added. Try the current content view first. | |
| (WebInspector.ContentBrowser.prototype.goForward): Added. Try the current content view first. | |
| (WebInspector.ContentBrowser.prototype._backButtonClicked): Call goBack on this instead of the content | |
| view container directly. | |
| (WebInspector.ContentBrowser.prototype._forwardButtonClicked): Call goForward on this instead of the | |
| content view container directly. | |
| (WebInspector.ContentBrowser.prototype._updateBackForwardButtons): Added. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Call _udpateBackForwardButtons. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView.prototype.canGoBack): Added stub. | |
| (WebInspector.ContentView.prototype.canGoForward): Added stub. | |
| (WebInspector.ContentView.prototype.goBack): Added stub. | |
| (WebInspector.ContentView.prototype.goForward): Added stub. | |
| 2012-01-04 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FrameContentView and WebInspector.ClusterContentView in preparation for showing | |
| either the main resource text or the DOM tree for a frame. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ClusterContentView.css: Added. | |
| (.content-view.cluster > .content-view-container): | |
| * UserInterface/ClusterContentView.js: Added. | |
| (WebInspector.ClusterContentView): | |
| (WebInspector.ClusterContentView.prototype.get contentViewContainer): | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Return a FrameContentView for a Frame. | |
| (WebInspector.ContentView.isViewable): Added Frame. | |
| * UserInterface/FrameContentView.js: Added. | |
| (WebInspector.FrameContentView): | |
| (WebInspector.FrameContentView.prototype.get frame): | |
| * UserInterface/Main.html: Included ClusterContentView.{css,js} and FrameContentView.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Added WebInspector.Frame check. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): Removed. The base class | |
| version of this function is enough now. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Close all FrameContentViews | |
| and improve a comment and add a FIXME. | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Use treeElement.representedObject | |
| instead of treeElement.resource since we want a FrameContentView for frames. | |
| 2012-01-04 Timothy Hatcher <timothy@apple.com> | |
| Populate the on-click menu for path components backed by tree elements. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Add PathComponentWasSelected event listener. | |
| (WebInspector.ContentBrowser.prototype._updateHierarchicalPathNavigationItem): Use TreeElementHierarchicalPathComponent. | |
| (WebInspector.ContentBrowser.prototype._hierarchicalPathComponentWasSelected): Added. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Add assertions that isViewable is correct. | |
| (WebInspector.ContentView.isViewable): Added. | |
| * UserInterface/Main.html: Included TreeElementHierarchicalPathComponent.js. | |
| * UserInterface/TreeElementHierarchicalPathComponent.js: Added. | |
| (WebInspector.TreeElementHierarchicalPathComponent): | |
| (WebInspector.TreeElementHierarchicalPathComponent.prototype.get treeElement): | |
| (WebInspector.TreeElementHierarchicalPathComponent.prototype.get previousSibling): | |
| (WebInspector.TreeElementHierarchicalPathComponent.prototype.get nextSibling): | |
| 2012-01-04 Timothy Hatcher <timothy@apple.com> | |
| Show a popup menu on click in HierarchicalPathComponent that contains sibling path components. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathComponent.css: | |
| (.hierarchical-path-component): Make positioning relative. | |
| (.hierarchical-path-component > select): Added. Positioned so the text in the menu aligns with the text in .title. | |
| * UserInterface/HierarchicalPathComponent.js: | |
| (WebInspector.HierarchicalPathComponent): Create the select element. | |
| (WebInspector.HierarchicalPathComponent.prototype.get previousSibling): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set previousSibling): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.get nextSibling): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype.set nextSibling): Added. | |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement): Added. Build the select menu. | |
| (WebInspector.HierarchicalPathComponent.prototype._updateSelectElement.createOption): Added. Helper to create | |
| an option element from a path component. | |
| (WebInspector.HierarchicalPathComponent.prototype._selectElementMouseDown): Added. Call _updateSelectElement. | |
| (WebInspector.HierarchicalPathComponent.prototype._selectElementSelectionChanged): Added. Fire the SiblingWasSelected event. | |
| * UserInterface/HierarchicalPathNavigationItem.js: | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): Remove and add event listeners. | |
| (WebInspector.HierarchicalPathNavigationItem.prototype._siblingPathComponentWasSelected): Added. Fire the PathComponentWasSelected event. | |
| 2012-01-03 Brian Weinstein <bweinstein@apple.com> | |
| If a database doesn't have any tables, its tree element shouldn't have a disclosure triangle. | |
| When creating the tree element for a database, initially set it not to have children, but make sure | |
| it is populated when it is first created, so children will be added if it has them. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseTreeElement.js: | |
| (WebInspector.DatabaseTreeElement): | |
| (WebInspector.DatabaseTreeElement.prototype.onpopulate.tableNamesCallback): | |
| (WebInspector.DatabaseTreeElement.prototype.onpopulate): | |
| 2012-01-02 Timothy Hatcher <timothy@apple.com> | |
| Localize the Web Inspector by adding WebInspector.UIString in places that need it. | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): | |
| * UserInterface/CookieStorageTreeElement.js: | |
| (WebInspector.CookieStorageTreeElement.prototype.get categoryName): | |
| * UserInterface/DOMStorageTreeElement.js: | |
| (WebInspector.DOMStorageTreeElement.prototype.get categoryName): | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| (WebInspector.DatabaseHostTreeElement.prototype.get categoryName): | |
| * UserInterface/DatabaseObject.js: | |
| (WebInspector.DatabaseObject): | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype._folderNameForResourceType): | |
| (WebInspector.FrameTreeElement.prototype._parentTreeElementForRepresentedObject): | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| (WebInspector._leftSidebarToggleButtonToolTip): | |
| (WebInspector._rightSidebarToggleButtonToolTip): | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForEmptyFilterResults): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype._domStorageObjectWasAdded): | |
| (WebInspector.StorageSidebarPanel.prototype._databaseWasAdded): | |
| (WebInspector.StorageSidebarPanel.prototype._cookieStorageObjectWasAdded): | |
| * English.lproj/localizedStrings.js: Updated with update-safari-localizable-strings. | |
| 2012-01-02 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.UIString and load the localized strings file. | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/Main.js: | |
| (WebInspector.loadLocalizedStrings): Added. Load the localized strings file and call | |
| content loaded when it loads. | |
| (WebInspector.UIString): Added. | |
| 2012-01-02 Timothy Hatcher <timothy@apple.com> | |
| Add string formatting functions to Web Inspector. | |
| These will be needed for localization and the console. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Utilities.js: | |
| (Array.convert): Copied from OpenSource/Source/WebCore/inspector/front-end/utilities.js. | |
| (String.tokenizeFormatString): Ditto. | |
| (String.standardFormatters): Ditto. | |
| (String.format): Ditto. | |
| (String.prototype.format): Added. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Add the toggle left and right sidebar buttons to the Quick Navigation bar. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/Images/LeftSidebarClose.pdf: Added. | |
| * UserInterface/Images/LeftSidebarOpen.pdf: Added. | |
| * UserInterface/Images/RightSidebarClose.pdf: Added. | |
| * UserInterface/Images/RightSidebarOpen.pdf: Added. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create the left and right toggle sidebar buttons and add event listeners. | |
| (WebInspector._leftSidebarToggleButtonToolTip): Added. Return the correct tool tip based on which sidebar | |
| is currently on the left. | |
| (WebInspector._rightSidebarToggleButtonToolTip): Added. Ditto for the right. | |
| (WebInspector._toggleLeftSidebar): Added. | |
| (WebInspector._toggleRightSidebar): Added. | |
| (WebInspector._sidebarCollapsedStateDidChange): Added. Update the toggle navigation buttons. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.set collapsed): Fire the CollapsedStateDidChange event. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter): Made the min-width 1px smaller to align with the divider in the navigation bar. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Add support for removing navigation items. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.removeNavigationItem): Added. | |
| (WebInspector.NavigationBar.prototype.set selectedNavigationItem): Moved code from here into _findNavigationItem. | |
| (WebInspector.NavigationBar.prototype._findNavigationItem): Added. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Add support for inserting navigation items at a specific index. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.addNavigationItem): Call insertNavigationItem. | |
| (WebInspector.NavigationBar.prototype.insertNavigationItem): Added. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ToggleButtonNavigationItem for the sidebar toggle buttons in the Quick Navigation bar. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.set image): Added. | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages._createEmbossedCanvasImage): Call clearRect | |
| since _generateImages can be called multiple times now. | |
| * UserInterface/Main.html: Included ToggleButtonNavigationItem.js. | |
| * UserInterface/ToggleButtonNavigationItem.js: Added. | |
| (WebInspector.ToggleButtonNavigationItem): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.get defaultImage): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.get alternateImage): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.get toggled): Added. | |
| (WebInspector.ToggleButtonNavigationItem.prototype.set toggled): Added. Set _toggled and set the correct image. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Actually set the ButtonNavigationItem tool tip so it shows up as expected. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): Use the toolTip setter instead of _toolTip. | |
| (WebInspector.ButtonNavigationItem.prototype.get toolTip): Return the title instead of _toolTip. | |
| (WebInspector.ButtonNavigationItem.prototype.set toolTip): Added. Set the element title. | |
| 2011-12-31 Timothy Hatcher <timothy@apple.com> | |
| Rename ButtonNavigationItem.displayName to toolTip. | |
| It was always intended to be used as the tool tip, so this makes it clear. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): | |
| (WebInspector.ButtonNavigationItem.prototype.constructor.WebInspector.ButtonNavigationItem.get toolTip): | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem): | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Fix an issue in the Web Inspector where the old page content might appear when | |
| pressing the back button. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Delay this work because | |
| other listeners of this event might not have fired yet. So selecting the main frame before those listeners | |
| do their work might cause the content of the old page to show instead of the new page. | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Add back/forward buttons to the Quick Navigation bar and hook them up. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Create the back and forward button navigation items. | |
| (WebInspector.ContentBrowser.prototype._backButtonClicked): Added. | |
| (WebInspector.ContentBrowser.prototype._forwardButtonClicked): Added. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Update the enabled state | |
| of the back/forward navigation items. | |
| * UserInterface/Images/BackArrow.pdf: Added. | |
| * UserInterface/Images/ForwardArrow.pdf: Added. | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DividerNavigationItem for dividing items in the Quick Navigation bar. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/DividerNavigationItem.css: Added. | |
| (.navigation-bar > .item.divider): | |
| * UserInterface/DividerNavigationItem.js: Added. | |
| (WebInspector.DividerNavigationItem): | |
| * UserInterface/Main.html: Included DividerNavigationItem.js and DividerNavigationItem.css. | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Add disabled support to WebInspector.ButtonNavigationItem. | |
| This is needed for the back/forward buttons. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar > .item.button.disabled > .glyph): Added. | |
| (.navigation-bar > .item.button:not(.disabled):not(.radio):active): Don't highlight on click when disabled. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem.prototype.get enabled): Added. | |
| (WebInspector.ButtonNavigationItem.prototype.set enabled): Added. | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Added :not(.disabled) to the focus and active rules. | |
| (WebInspector.ButtonNavigationItem.StyleClassName._mouseClicked): Don't fire the event when disabled. | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): Added :not(.disabled) to the focus and active rules. | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Add support for click events to WebInspector.ButtonNavigationItem. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): Added click event listener to the element. | |
| (WebInspector.ButtonNavigationItem.StyleClassName._mouseClicked): Added. Dispatch the Clicked event. | |
| 2011-12-29 Timothy Hatcher <timothy@apple.com> | |
| Support different size glyph images on WebInspector.ButtonNavigationItem. Also adds a highlight to | |
| buttons when pressed and general style clean up. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ButtonNavigationItem.css: | |
| (.navigation-bar > .item.button): Default buttons to a width of 26px. Removed background styles. | |
| (.navigation-bar > .item.button > .glyph): Set width and height to 100% and have the background | |
| centered and non-repeating. | |
| (.navigation-bar > .item.button:not(.radio):active): Added. Highlight when pressed. | |
| * UserInterface/ButtonNavigationItem.js: | |
| (WebInspector.ButtonNavigationItem): Added image width and height arguments. | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Added background-size to the generated rules. | |
| * UserInterface/RadioButtonNavigationItem.css: | |
| (.navigation-bar > .item.radio.button): Added. Moved from ButtonNavigationItem.css. | |
| (.navigation-bar.collapsed > .item.radio.button): Added. Moved from ButtonNavigationItem.css. | |
| (.navigation-bar > .item.radio.button.selected): Moved background-repeat from ButtonNavigationItem.css to here. | |
| (.navigation-bar.collapsed > .item.radio.button.selected): Added. Adjust the background-size to fit the width. | |
| * UserInterface/RadioButtonNavigationItem.js: | |
| (WebInspector.RadioButtonNavigationItem): Added image width and height arguments. | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): Added background-size to the generated rules. | |
| 2011-12-28 Timothy Hatcher <timothy@apple.com> | |
| Populate the Quick Navigation bar with the path of the selected item. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentBrowser.js: | |
| (WebInspector.ContentBrowser): Added delegate argument. Create a HierarchicalPathNavigationItem and add | |
| to the navigation bar. | |
| (WebInspector.ContentBrowser.prototype.get delegate): Added. | |
| (WebInspector.ContentBrowser.prototype.set delegate): Added. | |
| (WebInspector.ContentBrowser.prototype._updateHierarchicalPathNavigationItem): Added. Build path components | |
| based on the tree element for the represented object. | |
| (WebInspector.ContentBrowser.prototype._currentContentViewDidChange): Added. Call _updateHierarchicalPathNavigationItem. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype._showContentView): Dispatch the CurrentContentViewDidChange event. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Pass this as the delegate to the ContentBrowser. | |
| (WebInspector.contentBrowserTreeElementForRepresentedObject): Added. Call treeElementForRepresentedObject on | |
| the ResourceSidebarPanel for Resource represented objects. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.treeElementForRepresentedObject): Added. Generic implementation | |
| that will work for most NavigationSidebarPanel subclasses. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype.treeElementForRepresentedObject): Added. If the resource is a | |
| main resource, return the tree element for the parent frame. | |
| 2011-12-28 Timothy Hatcher <timothy@apple.com> | |
| Add HierarchicalPathNavigationItem and friends for the Quick Navigation Bar. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/HierarchicalPathComponent.css: Added. | |
| (.hierarchical-path-component): | |
| (.hierarchical-path-component > .icon): | |
| (.hierarchical-path-component > .title): | |
| (.hierarchical-path-component:last-of-type > .separator): | |
| (.hierarchical-path-component > .separator): | |
| (.hierarchical-path-component.collapsed > .title): | |
| * UserInterface/HierarchicalPathComponent.js: Added. | |
| (WebInspector.HierarchicalPathComponent): | |
| (WebInspector.HierarchicalPathComponent.prototype.get element): | |
| (WebInspector.HierarchicalPathComponent.prototype.get representedObject): | |
| (WebInspector.HierarchicalPathComponent.prototype.get displayName): | |
| (WebInspector.HierarchicalPathComponent.prototype.set displayName): | |
| * UserInterface/HierarchicalPathNavigationItem.js: Added. | |
| (WebInspector.HierarchicalPathNavigationItem): | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.get components): | |
| (WebInspector.HierarchicalPathNavigationItem.prototype.set components): | |
| * UserInterface/Images/HierarchicalNavigationItemChevron.pdf: Added. | |
| * UserInterface/Main.html: Included HierarchicalPathComponent.css, HierarchicalPathNavigationItem.js | |
| and HierarchicalPathComponent.js. | |
| 2011-12-26 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ContentBrowser to coordinate between the Quick Navigation bar and content view container. | |
| Part of: <rdar://problem/10318787> Implement the Quick Navigation bar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro and Brian Weinstein. | |
| * UserInterface/ContentBrowser.css: Added. | |
| (.content-browser): | |
| (.content-browser > .navigation-bar): | |
| (.content-browser > .content-view-container): | |
| * UserInterface/ContentBrowser.js: Added. | |
| (WebInspector.ContentBrowser): | |
| (WebInspector.ContentBrowser.prototype.get navigationBar): | |
| (WebInspector.ContentBrowser.prototype.get contentViewContainer): | |
| (WebInspector.ContentBrowser.prototype.showContentForRepresentedObject): | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.get element): Add missing return. | |
| * UserInterface/Main.css: | |
| (#content-browser): | |
| * UserInterface/Main.html: Renamed #content to #content-browser. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create a ContentBrowser instead of a NavigationBar and ContentViewContainer. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Use the ContentBrowser. | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Ditto. | |
| 2011-12-28 Timothy Hatcher <timothy@apple.com> | |
| Hold references to the navigation sidebar panels for easy access. | |
| Reviewed by Adam Roben. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Hold references to the sidebar panels. | |
| 2011-12-28 Timothy Hatcher <timothy@apple.com> | |
| Remove unused TreeElement class names. | |
| These class names were originally used for icons, but they have been | |
| replaced by icon specific class names. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/CookieStorageTreeElement.js: | |
| (WebInspector.CookieStorageTreeElement): | |
| * UserInterface/DOMStorageTreeElement.js: | |
| (WebInspector.DOMStorageTreeElement): | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| (WebInspector.DatabaseHostTreeElement): | |
| * UserInterface/DatabaseTableTreeElement.js: | |
| (WebInspector.DatabaseTableTreeElement): | |
| * UserInterface/DatabaseTreeElement.js: | |
| (WebInspector.DatabaseTreeElement): | |
| * UserInterface/FolderTreeElement.js: | |
| (WebInspector.FolderTreeElement): | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement): | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement): | |
| * UserInterface/StorageTreeElement.js: | |
| (WebInspector.StorageTreeElement): | |
| 2011-12-24 Timothy Hatcher <timothy@apple.com> | |
| Add icons for local and session storage. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMStorageIcons.css: Added. | |
| (.local-storage-icon .icon): | |
| (.session-storage-icon .icon): | |
| * UserInterface/DOMStorageTreeElement.js: | |
| (WebInspector.DOMStorageTreeElement): Add class names based on if it is local storage or not. | |
| (WebInspector.DOMStorageTreeElement.prototype.get categoryName): Remove blank line. | |
| * UserInterface/Images/LocalStorage.png: Added. | |
| * UserInterface/Images/LocalStorage@2x.png: Added. | |
| * UserInterface/Images/SessionStorage.png: Added. | |
| * UserInterface/Images/SessionStorage@2x.png: Added. | |
| * UserInterface/Main.html: Included DOMStorageIcons.css. | |
| 2011-12-24 Timothy Hatcher <timothy@apple.com> | |
| Add icons for databases and database tables. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DatabaseHostTreeElement.css: Removed. Duplicates FolderIcon.css. | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| (WebInspector.DatabaseHostTreeElement): Pass FolderIconStyleClassName. | |
| * UserInterface/DatabaseIcon.css: Added. | |
| (.database-icon .icon): | |
| * UserInterface/DatabaseTableIcon.css: Added. | |
| (.database-table-icon .icon): | |
| * UserInterface/DatabaseTableTreeElement.js: | |
| (WebInspector.DatabaseTableTreeElement): Pass class names to WebInspector.GeneralTreeElement. | |
| * UserInterface/DatabaseTreeElement.js: | |
| (WebInspector.DatabaseTreeElement): Don't inherit from FolderTreeElement. Pass class names | |
| to WebInspector.GeneralTreeElement. | |
| * UserInterface/Images/Database.png: Added. | |
| * UserInterface/Images/Database@2x.png: Added. | |
| * UserInterface/Images/DatabaseTable.png: Added. | |
| * UserInterface/Images/DatabaseTable@2x.png: Added. | |
| * UserInterface/Main.html: Included new files and removed DatabaseHostTreeElement.css. | |
| * UserInterface/StorageTreeElement.js: | |
| (WebInspector.StorageTreeElement): Remove a FIXME. | |
| 2011-12-24 Timothy Hatcher <timothy@apple.com> | |
| Add images for the Cookie icon. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/CookieIcon.css: Added. | |
| (.cookie-icon .icon): | |
| * UserInterface/CookieStorageTreeElement.js: | |
| (WebInspector.CookieStorageTreeElement): | |
| * UserInterface/Images/Cookie.png: Added. | |
| * UserInterface/Images/Cookie@2x.png: Added. | |
| * UserInterface/Main.html: Included CookieIcon.css. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Fix a couple of indentation problems in the Web Inspector. | |
| Reviewed by John Sullivan. | |
| * UserInterface/CookieStorageObject.js: Indent before constructor. | |
| * UserInterface/DatabaseHostTreeElement.js: Ditto. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Break out WebInspector.NavigationItem and its subclasses from NavigationBar.js and NavigationBar.css into separate files. | |
| Rubber-stamped by John Sullivan. | |
| * UserInterface/ButtonNavigationItem.css: Added. | |
| * UserInterface/ButtonNavigationItem.js: Added. | |
| * UserInterface/FlexibleSpaceNavigationItem.css: Added. | |
| * UserInterface/FlexibleSpaceNavigationItem.js: Added. | |
| * UserInterface/Main.html: Included new files. | |
| * UserInterface/NavigationBar.css: Moved "item" subclasses to seperate files. | |
| * UserInterface/NavigationBar.js: Moved NavigationItem and its subclasses to seperate files. | |
| * UserInterface/NavigationItem.js: Added. | |
| * UserInterface/RadioButtonNavigationItem.css: Added. | |
| * UserInterface/RadioButtonNavigationItem.js: Added. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Dynamically register the "mousemove" and "mouseup" event listeners in WebInspector.NavigationBar | |
| so they are not allways listening. | |
| Reviewed by Darin Adler. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar): Remove the static "mousemove" and "mouseup" event listeners. | |
| (WebInspector.NavigationBar.prototype._mouseDown): Install the "mousemove" and "mouseup" event listeners | |
| when a WebInspector.RadioButtonNavigationItem is hit. | |
| (WebInspector.NavigationBar.prototype._mouseMoved): Assert the mouse is down now that we register dynamically. | |
| (WebInspector.NavigationBar.prototype._mouseUp): Ditto. Remove the "mousemove" and "mouseup" event listeners. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Change WebInspector.NavigationBar.NavigationItemSelectedEventName to WebInspector.NavigationBar.Event.NavigationItemSelected. | |
| This beings WebInspector.NavigationBar in-line with all the other classes in how the event names are defined. | |
| Reviewed by Darin Adler. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.set selectedNavigationItem): Use WebInspector.NavigationBar.Event.NavigationItemSelected. | |
| (WebInspector.NavigationBar.prototype._mouseUp): Ditto. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): Use WebInspector.NavigationBar.Event.NavigationItemSelected. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Properly define the SidebarPanelSelected event in WebInspector.Sidebar. | |
| Reviewed by John Sullivan. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.Event): Added. | |
| (WebInspector.Sidebar.Event.SidebarPanelSelected): Added. | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): Use WebInspector.Sidebar.Event.SidebarPanelSelected | |
| instead of the never defined WebInspector.Sidebar.SidebarPanelSelectedEventName. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Break out the SidebarPanel class into a separate file and make it correctly inherit from WebInspector.Object. | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.html: Included SidebarPanel.js. | |
| * UserInterface/Sidebar.js: Moved WebInspector.SidebarPanel and WebInspector.SidebarPanel.prototype from here... | |
| * UserInterface/SidebarPanel.js: Added. ...to here. Also fixed the prototype chain to make SidebarPanel inherit | |
| from WebInspector.Object like it should have been. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Fix an incorrect use of typeof in the Web Inspector by using instanceof instead. | |
| Reviewed by Adam Roben. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter): Use instanceof | |
| instead of typeof to check if the input is an array. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Make the CSS used for folder and resource icons generic so it can be used by the quick navigation bar. | |
| Reviewed by Darin Adler. | |
| * UserInterface/FolderIcon.css: Renamed from Safari/Develop/WebInspector/FolderTreeElement.css. | |
| Replaced "folder-tree-element" with "folder-icon". | |
| * UserInterface/FolderTreeElement.js: | |
| (WebInspector.FolderTreeElement): Add the "folder-icon" class. | |
| * UserInterface/Main.html: | |
| * UserInterface/ResourceIcons.css: Renamed from Safari/Develop/WebInspector/ResourceTreeElement.css. | |
| Replaced "resource-tree-element" with "resource-icon". | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement): Add the "resource-icon" class. | |
| 2011-12-22 Timothy Hatcher <timothy@apple.com> | |
| Make identifier optional in the base class of WebInspector.NavigationItem but required for WebInspector.ButtonNavigationItem. | |
| Reviewed by Darin Adler. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationItem): Remove assert for identifier and added "|| null" to the assignment. | |
| (WebInspector.NavigationItem.prototype.get _classNames): Null check identifier and add it separately. | |
| (WebInspector.ButtonNavigationItem): Added assert for identifier. | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): Don't pass the identifier to _canvasIdentifier. | |
| (WebInspector.ButtonNavigationItem.StyleClassName._canvasIdentifier): Don't take the identifier as an argument, use this.identifier. | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages._createEmbossedCanvasImage): Don't pass the identifier to _canvasIdentifier. | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): Ditto. | |
| 2011-12-20 Timothy Hatcher <timothy@apple.com> | |
| Show a content view for XHR resources in the new Web Inspector. | |
| Reviewed by Adam Roben. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Add a case for WebInspector.Resource.Type.XHR. | |
| 2011-12-19 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| When inserting items into the Storage sidebar, insert them in alphabetical order by main title so | |
| it is easier for the user to navigate. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel.prototype._compareTreeElementsByMainTitle): | |
| (WebInspector.StorageSidebarPanel.prototype._addChild): | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Only fire the WebInspector.SyntaxHighlighter.Event.HighlightsDidChange event for whole lines. | |
| Firing the event for partial lines causes too much DOM churn on large, single-line files. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SyntaxHighlighter.js: | |
| (WebInspector.SyntaxHighlighter.prototype._highlightNextChunk): Update actualStopLine after the | |
| current line has completely finished. Don't fire the event if actualStopLine is still null. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Start and stop syntax highlighting when a TextEditor is shown and hidden. This reduces the chance | |
| of multiple TextEditors highlighting at the same time. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.shown): Added. Call startHighlighting and updateLayout. | |
| (WebInspector.TextEditor.prototype.hidden): Added. Call stopHighlighting. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.shown): Call TextEditor.shown instead of updateLayout. | |
| (WebInspector.TextResourceContentView.prototype.hidden): Added. Call TextEditor.hidden. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Use a synthetic MIME-type to select the syntax highlighter's tokenizer. Resources are often | |
| transferred with a MIME-type that doesn't match the purpose the resource was loaded for. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get syntheticMIMEType): Added. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Use syntheticMIMEType. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Intercept link clicks in the Web Inspector and try to show the appropriate resource, | |
| otherwise fallback to opening the URL in a new tab/window. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.resourceForURL): Added argument to recursively search child frames. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Add click event listener. | |
| (WebInspector.openURL): Added. | |
| (WebInspector._mouseWasClicked): Added. Catch unhandled link clicks, cancel them and log and error. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Added click event listener. | |
| (WebInspector.ResourceContentView.prototype._mouseWasClicked): Added. Call WebInspector.openURL. | |
| * UserInterface/Utilities.js: | |
| (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray): Copied from WebCore/inspector/front-end/utilities.js. | |
| (Node.prototype.enclosingNodeOrSelfWithNodeName): Copied from WebCore/inspector/front-end/utilities.js. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Make links in TextEditor be only absolute URLs. Otherwise relative URLs are resolved | |
| against the Web Inspector as a base URL. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Set _delegate to null. | |
| (WebInspector.TextEditor.prototype.get delegate): Added. | |
| (WebInspector.TextEditor.prototype.set delegate): Added. | |
| (WebInspector.TextEditor.prototype._reset): Pass this when making a TextEditorTextChunk. | |
| (WebInspector.TextEditor.prototype._breakTextChunkAtIndexIntoSingleLineTextChunks): Ditto. | |
| (WebInspector.TextEditor.prototype._consolidateSingleLineTextChunks): Ditto. | |
| (WebInspector.TextEditorTextChunk): Added textEditor argument. | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent.createTokenElement): Ask the TextEditor | |
| delegate for the baseURL and use absoluteURL when assigning the href for links. | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Set the TextEditor delegate to this. | |
| (WebInspector.TextResourceContentView.prototype.textEditorBaseURL): Added. Returns the resource's URL. | |
| * UserInterface/Utilities.js: | |
| (parseURL): Trim whitespace from the URL. | |
| (absoluteURL): Added. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Workaround a weird and random JavaScript bug that causes the wrong 'this' object when filtering | |
| the resource sidebar quickly. | |
| The bug is tracked by: https://webkit.org/b/74811 | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype.traverseNextTreeElement): Use call to always get the right 'this' object. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Reduce the number of updates when setting the string of a WebInspector.TextEditor. | |
| Invalidating the syntax highlighter causes HighlightsDidChange events to fire and update the text | |
| chunks. We can ignore those events because _reset will completely rebuild the text chunks anyway. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype.set textContent): Set _ignoreHighlightChanges to true. | |
| (WebInspector.TextEditor.prototype.set string): Ditto. | |
| (WebInspector.TextEditor.prototype._reset): Reset _ignoreHighlightChanges back to false. | |
| (WebInspector.TextEditor.prototype._highlightsChanged): Return early if _ignoreHighlightChanges is true. | |
| 2011-12-18 Timothy Hatcher <timothy@apple.com> | |
| Improve a workaround and get the clientHeight of the correct element in WebInspector.TextEditor. | |
| The bug this is working around is tracked by: https://webkit.org/b/74812 | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .content-container): Set height to 100%. It isn't clear why we should need to set | |
| the height here, but without this the element collapses sometimes when it should have a height. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor.prototype._consolidateSingleLineTextChunks): Get clientHeight from _contentContainerElement. | |
| (WebInspector.TextEditor.prototype._firstVisibleTextChunkIndex): Ditto. | |
| 2011-12-17 Timothy Hatcher <timothy@apple.com> | |
| Don't show visited links in the Web Inspector. | |
| Removed the :link pseudo class so visited links are styled the same. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/TextEditorDefaultTheme.css: | |
| (.text-editor a): | |
| (.text-editor a:hover): | |
| 2011-12-17 Timothy Hatcher <timothy@apple.com> | |
| Allow clicking the selected resource again to show the content view if another content view | |
| has been shown since the resource was last selected. This matches Xcode. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): | |
| * UserInterface/TreeOutline.js: | |
| (TreeOutline): Set allowsRepeatSelection to false. | |
| (TreeElement.prototype.select): Refactored so that when allowsRepeatSelection is true the | |
| onselect functions are called still. | |
| 2011-12-17 Timothy Hatcher <timothy@apple.com> | |
| Don't attempt to create a tokenizer for "text/plain" resources. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/SourceTokenizer.js: | |
| (WebInspector.SourceTokenizer): Return null for a MIME-type of "text/plain". | |
| 2011-12-17 Timothy Hatcher <timothy@apple.com> | |
| Collapse the details sidebar by default. It is empty right now, so there is no reason | |
| to show it until we have some sidebar panels to show. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Set this.detailsSidebar.collapsed to true. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Set the Web Inspector window title and update it when the main frame navigates. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added event listeners for changes on the main frame. | |
| (WebInspector.updateWindowTitle): Added. Build a title based on the URL components. | |
| (WebInspector._mainFrameDidChange): Added. Call updateWindowTitle. | |
| (WebInspector._mainResourceDidChange): Added. Call updateWindowTitle if this is the main frame. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Force tabs to be 4 spaces wide in the new Web Inspector instead of the default 8 spaces wide. | |
| This is done via the syntax highlighter, which tokenizes the tabs to be styled as inline-blocks | |
| with a width equal to 4 spaces each. | |
| Reviewed by John Sullivan. | |
| * UserInterface/SyntaxHighlighter.js: | |
| (WebInspector.SyntaxHighlighter.CharacterTokens): Added \t. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent.createTokenElement): Handle the "tab" | |
| token type by creating a span per tab. | |
| * UserInterface/TextEditorDefaultTheme.css: | |
| (.text-editor .tab): Added. Inline-block with a width equal to 4 spaces. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Implement WebInspector.TextResourceContentView. | |
| Create a TextEditor that fills the view and displays the text content of the resource. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.html: Include TextResourceContentView.css. | |
| * UserInterface/TextResourceContentView.css: Added. | |
| (.content-view.resource.text > .text-editor): | |
| * UserInterface/TextResourceContentView.js: | |
| (WebInspector.TextResourceContentView): Create a TextEditor. | |
| (WebInspector.TextResourceContentView.prototype.get textEditor): Added. | |
| (WebInspector.TextResourceContentView.prototype.contentAvailable): Added. Populate the TextEditor | |
| with content and set the MIME-type. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add the line number gutter to WebInspector.TextEditor. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TextEditor.css: | |
| (.text-editor > .gutter): Added. | |
| (.text-editor > .gutter > .line-number): Added. | |
| (.text-editor > .gutter > .line-number.maximum): Added. | |
| (.text-editor > .gutter > .line-number.hidden): Added. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Create the _gutterElement. | |
| (WebInspector.TextEditor.prototype._reset): Call _updateLineNumbers. | |
| (WebInspector.TextEditor.prototype._scrollPositionChanged): Ditto. | |
| (WebInspector.TextEditor.prototype._updateLineNumbers): Added. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Syntax highlight the content of WebInspector.TextEditor. | |
| Only single line text chunks are rendered with syntax highlighting, which are the the text chunks | |
| that are near the visible scroll range of the text editor. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/SyntaxHighlighter.js: | |
| (WebInspector.SyntaxHighlighter.prototype.invalidate): Dispatch the HighlightsDidChange event. | |
| (WebInspector.SyntaxHighlighter.prototype._highlightNextChunk): Ditto. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Create a WebInspector.SyntaxHighlighter and listen for the HighlightsDidChange event. | |
| (WebInspector.TextEditor.prototype.set textContent): Set the SyntaxHighlighter textContent. | |
| (WebInspector.TextEditor.prototype.set string): Invalidate the SyntaxHighlighter. | |
| (WebInspector.TextEditor.prototype.get mimeType): Added. | |
| (WebInspector.TextEditor.prototype.set mimeType): Added. | |
| (WebInspector.TextEditor.prototype._reset): Stop highlighting and start again. | |
| (WebInspector.TextEditor.prototype._scrollPositionChanged): Do a sync highlight. | |
| (WebInspector.TextEditor.prototype._scrollingDidStop): Start highlighting. | |
| (WebInspector.TextEditor.prototype._highlightsChanged): Update single line text chunks. | |
| (WebInspector.TextEditor.prototype._textChunkIndexForLine): Added. | |
| (WebInspector.TextEditor.prototype._textChunkForLine): Added. | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent.createTokenElement): Added. | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent.appendText): Added. | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent): Enumerate the syntax highlighting tokens when there is only one line. | |
| * UserInterface/TextEditorDefaultTheme.css: Added. | |
| (.text-editor > .content-container): | |
| (.text-editor .css-comment): | |
| (.text-editor .css-keyword): | |
| (.text-editor .css-number): | |
| (.text-editor .css-at-rule): | |
| (.text-editor .css-selector): | |
| (.text-editor .css-important): | |
| (.text-editor .javascript-comment): | |
| (.text-editor .javascript-keyword): | |
| (.text-editor .javascript-number): | |
| (.text-editor .javascript-regexp): | |
| (.text-editor .javascript-ident): | |
| (.text-editor .html-comment): | |
| (.text-editor .html-tag): | |
| (.text-editor .html-doctype): | |
| (.text-editor .html-attribute-name): | |
| (.text-editor .html-attribute-value): | |
| (.text-editor a:link): | |
| (.text-editor a:link:hover): | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Break up text chunks into single lines when they are visible, and consolidate them again | |
| when they are not visible after scrolling. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/TextEditor.js: | |
| (WebInspector.TextEditor): Add scroll event listener. | |
| (WebInspector.TextEditor.prototype._reset): Call _breakVisibleTextChunksIntoSingleLineTextChunks. | |
| (WebInspector.TextEditor.prototype._scrollPositionChanged): Added. Schedule timeout for _scrollingDidStop. | |
| Call _breakVisibleTextChunksIntoSingleLineTextChunks. | |
| (WebInspector.TextEditor.prototype._scrollingDidStop): Added. Call _consolidateHiddenSingleLineTextChunksIfNeeded. | |
| (WebInspector.TextEditor.prototype._breakTextChunkAtIndexIntoSingleLineTextChunks): Added. | |
| (WebInspector.TextEditor.prototype._breakVisibleTextChunksIntoSingleLineTextChunks): Added. | |
| (WebInspector.TextEditor.prototype._consolidateHiddenSingleLineTextChunksIfNeeded): Added. | |
| (WebInspector.TextEditor.prototype._consolidateHiddenSingleLineTextChunks): Added. | |
| (WebInspector.TextEditor.prototype._consolidateSingleLineTextChunks): Added. | |
| (WebInspector.TextEditor.prototype._firstVisibleTextChunkIndex.compareTopOffsets): Added. | |
| (WebInspector.TextEditor.prototype._firstVisibleTextChunkIndex): Added. | |
| (WebInspector.TextEditor.prototype._rangeOfVisibleTextChunks): Added. | |
| (WebInspector.TextEditor.prototype._lastLineNumberOfLastVisibleTextChunk): Added. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.TextEditor which is the view for WebInspector.TextContent. | |
| Right now it only shows plain-text. In the end it will support syntax highlighting and editing. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextEditor.css: Added. | |
| (.text-editor): | |
| (.text-editor > .content-container): | |
| (.text-editor > .content-container > .content): | |
| * UserInterface/TextEditor.js: Added. | |
| (WebInspector.TextEditor): | |
| (WebInspector.TextEditor.prototype.get element): | |
| (WebInspector.TextEditor.prototype.get textContent): | |
| (WebInspector.TextEditor.prototype.set textContent): | |
| (WebInspector.TextEditor.prototype.get string): | |
| (WebInspector.TextEditor.prototype.set string): | |
| (WebInspector.TextEditor.prototype._reset): | |
| (WebInspector.TextEditorTextChunk): | |
| (WebInspector.TextEditorTextChunk.prototype.constructor.WebInspector.TextEditorChunk.get element): | |
| (WebInspector.TextEditorTextChunk.prototype.get firstLineNumber): | |
| (WebInspector.TextEditorTextChunk.prototype.get lastLineNumber): | |
| (WebInspector.TextEditorTextChunk.prototype.get numberOfLines): | |
| (WebInspector.TextEditorTextChunk.prototype.get offsetTop): | |
| (WebInspector.TextEditorTextChunk.prototype.updateContent): | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.SyntaxHighlighter which uses SourceTokenizer, TextContent and AttributedString. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/SyntaxHighlighter.js: Added. | |
| (WebInspector.SyntaxHighlighter): | |
| (WebInspector.SyntaxHighlighter.prototype.get textContent): | |
| (WebInspector.SyntaxHighlighter.prototype.set textContent): | |
| (WebInspector.SyntaxHighlighter.prototype.get mimeType): | |
| (WebInspector.SyntaxHighlighter.prototype.set mimeType): | |
| (WebInspector.SyntaxHighlighter.prototype.invalidate): | |
| (WebInspector.SyntaxHighlighter.prototype.isHighlighting): | |
| (WebInspector.SyntaxHighlighter.prototype.synchronousHighlight): | |
| (WebInspector.SyntaxHighlighter.prototype.startHighlighting): | |
| (WebInspector.SyntaxHighlighter.prototype.stopHighlighting): | |
| (WebInspector.SyntaxHighlighter.prototype._highlightNextChunk): | |
| (WebInspector.SyntaxHighlighter.prototype._highlightNextChunk.copyState): | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.TextContent which will be used for multi-line text, like resources. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TextContent.js: Added. | |
| (WebInspector.TextContent): | |
| (WebInspector.TextContent.prototype.toString): | |
| (WebInspector.TextContent.prototype.get string): | |
| (WebInspector.TextContent.prototype.set string.createAttributedString): | |
| (WebInspector.TextContent.prototype.set string): | |
| (WebInspector.TextContent.prototype.get length): | |
| (WebInspector.TextContent.prototype.get lineBreakString): | |
| (WebInspector.TextContent.prototype.set lineBreakString): | |
| (WebInspector.TextContent.prototype.get lines): | |
| (WebInspector.TextContent.prototype.get numberOfLines): | |
| (WebInspector.TextContent.prototype.line): | |
| (WebInspector.TextContent.prototype.attributesForLine): | |
| (WebInspector.TextContent.prototype.attributeForLine): | |
| (WebInspector.TextContent.prototype.setAttributeForLine): | |
| (WebInspector.TextContent.prototype.removeAttributeFromLine): | |
| (WebInspector.TextContent.prototype.removeAttributesFromLine): | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.AttributedString which will be used for syntax highlighted text. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/AttributedString.js: Added. | |
| (WebInspector.AttributedString): | |
| (WebInspector.AttributedString.prototype.toString): | |
| (WebInspector.AttributedString.prototype.get string): | |
| (WebInspector.AttributedString.prototype.enumerateAttributes): | |
| (WebInspector.AttributedString.prototype.enumerateAttribute): | |
| (WebInspector.AttributedString.prototype.attributesAtOffset): | |
| (WebInspector.AttributedString.prototype.attributeAtOffset): | |
| (WebInspector.AttributedString.prototype.setAttribute): | |
| (WebInspector.AttributedString.prototype.removeAttribute.processAttributes): | |
| (WebInspector.AttributedString.prototype.removeAttribute): | |
| (WebInspector.AttributedString.prototype.removeAttributes): | |
| * UserInterface/Utilities.js: | |
| (Object.shallowCopy): Added. Helper for making a new object with the same top-level properties. | |
| (Object.shallowEqual): Added. Helper for checking if two objects have the same top-level properties. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add tokenizers and support files needed for syntax highlighting. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Rubber-stamped by Joseph Pecoraro. | |
| * UserInterface/CSSCompletions.js: Copied from WebCore/inspector/front-end/CSSCompletions.js. | |
| * UserInterface/CSSKeywordCompletions.js: Copied from WebCore/inspector/front-end/CSSCompletions.js. | |
| * UserInterface/CSSSourceTokenizer.js: Copied from WebCore/inspector/front-end/SourceCSSTokenizer.js. | |
| * UserInterface/HTMLSourceTokenizer.js: Copied from WebCore/inspector/front-end/SourceHTMLTokenizer.js. | |
| * UserInterface/JavaScriptSourceTokenizer.js: Copied from WebCore/inspector/front-end/SourceJavaScriptTokenizer.js. | |
| * UserInterface/Utilities.js: | |
| (Array.keySet): Added. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.SourceTokenizer abstract base class. | |
| This is the base class for HTMLSourceTokenizer, JavaScriptSourceTokenizer and CSSSourceTokenizer. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/SourceTokenizer.js: Added. | |
| (WebInspector.SourceTokenizer): | |
| (WebInspector.SourceTokenizer.prototype.initialize): | |
| (WebInspector.SourceTokenizer.prototype.set line): | |
| (WebInspector.SourceTokenizer.prototype.get condition): | |
| (WebInspector.SourceTokenizer.prototype.set condition): | |
| (WebInspector.SourceTokenizer.prototype.createInitialCondition): | |
| (WebInspector.SourceTokenizer.prototype.nextToken): | |
| (WebInspector.SourceTokenizer.prototype._charAt): | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Remove the cached ContentView from the represented object when the ContentView is closed. | |
| This allows the ContentView to be garbage collected if the represented object stays around. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Set _representedObject. | |
| (WebInspector.ContentView.prototype.get representedObject): Added. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject): | |
| (WebInspector.ContentViewContainer.prototype.showContentView): Use _disassociateFromContentView | |
| (WebInspector.ContentViewContainer.prototype.replaceContentView): Ditto. | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViewsOfPrototype): Ditto. | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Ditto. | |
| (WebInspector.ContentViewContainer.prototype._disassociateFromContentView): Added. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Pass resource to ContentView as the representedObject. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Don't support creating a WebInspector.ResourceContentView from a WebInspector.Frame. | |
| Since the main frame stays the same between navigations and ContentViewContainer caches | |
| the ContentView on the Frame, the ContentView is not being recreated for the new page. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Remove the check for WebInspector.Frame as a representedObject. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Select the | |
| main resource of the main frame. | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Pass the resource. | |
| 2011-12-16 Timothy Hatcher <timothy@apple.com> | |
| Mark the main resource of frames as finished when the resource tree is pulled the first time. | |
| Also delay marking resources as finished until they have a parent frame. | |
| This is needed to show content for a selected frame, otherwise the content view is blank. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Call markAsFinished on the mainResource. | |
| (WebInspector.FrameResourceManager.prototype._createResource): Move the call to markAsFinished from here... | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): ...to here. | |
| 2011-12-15 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add Database tables to the storage sidebar panel. When a database needs to be populated, we ask | |
| for the database's table names asynchronously. In the callback we create DatabaseTableObjects | |
| and DatabaseTableTreeElements for all of the table names that the database has, and add the | |
| the DatabaseTableTreeElements as children of the DatabaseTreeElement. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseObject.js: | |
| (WebInspector.DatabaseObject.prototype.getTableNames): Calls into WebCore to get the database's table names, | |
| and sorts them. | |
| * UserInterface/DatabaseTableObject.js: Added. | |
| (WebInspector.DatabaseTableObject): | |
| (WebInspector.DatabaseTableObject.prototype.constructor.WebInspector.DatabaseTableObject.get name): Returns the name. | |
| (WebInspector.DatabaseTableObject.prototype.get database): Returns the databaseObject. | |
| * UserInterface/DatabaseTableTreeElement.js: Added. | |
| (WebInspector.DatabaseTableTreeElement): | |
| * UserInterface/DatabaseTreeElement.js: | |
| (WebInspector.DatabaseTreeElement.prototype.constructor.WebInspector.DatabaseTreeElement.oncollapse): Set a flag so that we | |
| repopulate the children when the tree element is re-expanded. | |
| (WebInspector.DatabaseTreeElement.prototype.onpopulate.tableNamesCallback): Create DatabaseTableObjects and DatabaseTableTreeElements | |
| for each of the table names. | |
| (WebInspector.DatabaseTreeElement.prototype.onpopulate): Ask the DatabaseObject for its list of table names. | |
| * UserInterface/Main.html: Add new files. | |
| 2011-12-14 Brian Weinstein <bweinstein@apple.com> | |
| Some cleanup after r39488. | |
| Don't use FolderTreeElement's style in DatabaseHostTreeElement (because DatabaseHostTreeElement isn't a FolderTreeElement). | |
| Instead, create a new css file and configure DatabaseHostTreeElement to show a folder. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseHostTreeElement.css: Added. | |
| (.database-host-tree-element .icon): | |
| * UserInterface/DatabaseHostTreeElement.js: | |
| (WebInspector.DatabaseHostTreeElement): | |
| * UserInterface/Main.html: | |
| 2011-12-13 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add Databases to the storage sidebar panel. This patch adds two new classes of tree elements - a DatabaseHostTreeElement, | |
| which represents a host that has at least one database, and a DatabaseTreeElement, which eventually will have tables. | |
| We use the same collapsing logic for databases that we use for cookies and DOM Storage. With one domain, | |
| it will say: | |
| Database - Domain | |
| Name 1 | |
| Name 2 | |
| With multiple domains, it will say: | |
| Databases | |
| Domain 1 | |
| Name 1 | |
| Name 2 | |
| Domain 2 | |
| Name 3 | |
| Name 4 | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/DatabaseObject.js: Added. | |
| (WebInspector.DatabaseObject): | |
| (WebInspector.DatabaseObject.prototype.constructor.WebInspector.DatabaseObject.get id): Returns the id. | |
| (WebInspector.DatabaseObject.prototype.get host): Returns the host. | |
| (WebInspector.DatabaseObject.prototype.get name): Returns the name. | |
| (WebInspector.DatabaseObject.prototype.get version): Returns the version. | |
| * UserInterface/DatabaseObserver.js: | |
| (WebInspector.DatabaseObserver.prototype.constructor.WebInspector.DatabaseObserver.addDatabase): Tell the StorageManager | |
| a database was added. | |
| * UserInterface/DatabaseTreeElement.js: Added. | |
| (WebInspector.DatabaseTreeElement): | |
| (WebInspector.DatabaseTreeElement.prototype.constructor.WebInspector.DatabaseTreeElement.get name): Initialize the FolderTreeElement. | |
| * UserInterface/DatabaseHostTreeElement.js: Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager): | |
| (WebInspector.StorageManager.prototype.constructor.WebInspector.StorageManager.initialize): Initialize a list of databases. | |
| (WebInspector.StorageManager.prototype.databaseWasAdded): Create a DatabaseObject and tell the StorageSidebarPanel we added | |
| a database. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype._databaseWasAdded): Create a DatabaseTreeElement and add it to the sidebar. | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): Clear the root database tree element. | |
| 2011-12-09 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add Cookies to the Storage sidebar panel. Add a listener for when a cookie storage object is added, | |
| and add it to the sidebar. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype.constructor.WebInspector.StorageSidebarPanel._domStorageObjectWasAdded): Remove some dead code. | |
| (WebInspector.StorageSidebarPanel.prototype._cookieStorageObjectWasAdded): Add a child to the storage sidebar. | |
| (WebInspector.StorageSidebarPanel.prototype._addChild): Change the class that we are expecting to a StorageTreeElement, because it can be | |
| either a DOMStorageTreeElement or a CookieStorageTreeElement, but both are StorageTreeElements. | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| 2011-12-09 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add CookieStorageTreeElement, and refactor DOMStorageTreeElement into StorageTreeElement so the code to handle | |
| flattening of the folders can be shared between CookieStorageTreeElement, DOMStorageTreeElement, and the others | |
| that we will add in the future. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageTreeElement.js: Added. | |
| (WebInspector.CookieStorageTreeElement): Call | |
| (WebInspector.CookieStorageTreeElement.prototype.constructor.WebInspector.CookieStorageTreeElement.name): Return the host of the CookieStorageObject. | |
| (WebInspector.CookieStorageTreeElement.prototype.category): Return "Cookies". | |
| * UserInterface/DOMStorageTreeElement.js: | |
| (WebInspector.DOMStorageTreeElement): | |
| (WebInspector.DOMStorageTreeElement.prototype.constructor.WebInspector.DOMStorageTreeElement.name): Return the host of the DOMStorageObject. | |
| (WebInspector.DOMStorageTreeElement.prototype.category): Return "Local Storage" or "Session Storage". | |
| * UserInterface/Main.html: Add new files. | |
| (WebInspector.StorageTreeElement): | |
| (WebInspector.StorageTreeElement.prototype.constructor.WebInspector.StorageTreeElement.get flattened): Moved from DOMStorageTreeElement | |
| and refactored to be more general. | |
| (WebInspector.StorageTreeElement.prototype.set flattened): Ditto. | |
| 2011-12-09 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Listen for when the main resource of any frame navigates, and add a cookie storage object for every | |
| frame with a unique host. Any of these frames could have cookies, and we want to show them all. | |
| Reviewed by Tim Hatcher. | |
| * UserInterface/CookieStorageObject.js: Added. | |
| (WebInspector.CookieStorageObject): | |
| (WebInspector.CookieStorageObject.prototype.constructor.WebInspector.CookieStorageObject.get host): | |
| * UserInterface/Main.html: Add a new source file. | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager.prototype.constructor.WebInspector.StorageManager.initialize): | |
| (WebInspector.StorageManager.prototype._mainResourceDidChange): If any frame navigates, add create a cookie | |
| storage object for the frame's host. | |
| 2011-12-08 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Generate the local storage and session storage folders on demand. We don't show them in the tree until | |
| a local storage or session storage object has been added, and if there is only one object, we flatten the | |
| folder so it says: | |
| Local Storage Ñ foo.com | |
| If there is more than one object, we create a folder, and the structure will be: | |
| Local Storage | |
| foo.com | |
| bar.com | |
| Reviewed by Tim Hatcher and Joseph Pecoraro. | |
| * UserInterface/DOMStorageTreeElement.js: Added. | |
| (WebInspector.DOMStorageTreeElement): Create a GeneralTreeElement and set a few properties. | |
| (WebInspector.DOMStorageTreeElement.prototype.constructor.WebInspector.DOMStorageTreeElement.set flattened): | |
| * UserInterface/Main.html: Include a new script. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): Initialize _localStorageTreeElement and _sessionStorageTreeElement to null. | |
| (WebInspector.StorageSidebarPanel.prototype.constructor.WebInspector.StorageSidebarPanel._domStorageObjectWasAdded): Call _addChild. | |
| (WebInspector.StorageSidebarPanel.prototype._addChild): This object is responsible for setting up the hierarchy described above. | |
| - If there is no current child, it tells the just added child that it is the only child, and will be displayed flattened. | |
| - If the current child is a DOMStorageTreeElement, we create a folder and add the previous only child and the just added child | |
| to the folder. | |
| - If the current child is a folder, we append the just added child to the folder. | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): | |
| 2011-12-07 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Clear the Local Storage and Session Storage folders when the main resource of the main frame changes. This means | |
| that we are navigating to a new site, and we want to clear all of the storage folders. | |
| Reviewed by Tim Hatcher and Joseph Pecoraro. | |
| * UserInterface/StorageManager.js: | |
| (WebInspector.StorageManager): Listen for MainResourceDidChange on all frames. | |
| (WebInspector.StorageManager.prototype._mainResourceDidChange): If the main resource changed for the main frame, fire an | |
| event saying storage was cleared. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype.constructor.WebInspector.StorageSidebarPanel._domStorageObjectWasAdded): | |
| (WebInspector.StorageSidebarPanel.prototype._storageCleared): Remove the children from the local storage and session storage folders. | |
| 2011-12-07 Brian Weinstein <bweinstein@apple.com> | |
| More of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add folders for Local Storage and Session Storage, and add children when DOMStorageObserver.addDOMStorage is called. | |
| These items are never removed yet, we will need to listen for main frame navigation, and clear the folders, but | |
| that will be done in a follow-up patch. | |
| Reviewed by Tim Hatcher and Joseph Pecoraro. | |
| * UserInterface/DOMStorageObject.js: Added. | |
| (WebInspector.DOMStorageObject): | |
| (WebInspector.DOMStorageObject.prototype.get id): Returns the id. | |
| (WebInspector.DOMStorageObject.prototype.get domain): Returns the domain. | |
| (WebInspector.DOMStorageObject.prototype.get isLocalStorage): Returns whether or not the DOM storage is local storage | |
| (vs. session storage). | |
| * UserInterface/DOMStorageObserver.js: | |
| (WebInspector.DOMStorageObserver.prototype.constructor.WebInspector.DOMStorageObserver.addDOMStorage): Create a new DOMStorageObject | |
| and tell the StorageManager about it. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create the StorageManager. | |
| * UserInterface/StorageManager.js: Added. | |
| (WebInspector.StorageManager): | |
| (WebInspector.StorageManager.prototype.constructor.WebInspector.StorageManager.initialize): | |
| (WebInspector.StorageManager.prototype.addDOMStorage): Tell the StorageSidebarPanel we added a DOMStorageObject. | |
| * UserInterface/StorageSidebarPanel.js: | |
| (WebInspector.StorageSidebarPanel): | |
| (WebInspector.StorageSidebarPanel.prototype.constructor.WebInspector.StorageSidebarPanel._domStorageObjectWasAdded): Add a child to either | |
| local or session storage. | |
| 2011-12-05 Brian Weinstein <bweinstein@apple.com> | |
| Part of <rdar://problem/10318744> Implement the Storage sidebar for the new Web Inspector design. | |
| Add StorageSidebarPanel.js, and have it create a new NavigationSidebarPanel. | |
| Reviewed by Tim Hatcher and Joseph Pecoraro. | |
| * UserInterface/Main.html: Add the new js file. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Call WebInspector.StorageSidebarPanel. | |
| * UserInterface/StorageSidebarPanel.js: Added. | |
| (WebInspector.StorageSidebarPanel): | |
| 2011-12-06 Timothy Hatcher <timothy@apple.com> | |
| Call WebInspector.Object.addConstructorFunctions on all the Web Inspector constructors that file events. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FilterBar.js: | |
| * UserInterface/Frame.js: | |
| * UserInterface/FrameResourceManager.js: | |
| * UserInterface/NavigationBar.js: | |
| * UserInterface/Resource.js: | |
| * UserInterface/Sidebar.js: | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add support for listening for events on constructors, which gets notified of events that fire | |
| on any of the instances of that constructor. | |
| This lets you do things like listen for navigation in any frame by doing: | |
| WebInspector.Frame.addEventListener(WebInspector.Frame.Event.MainResourceDidChange, ...) | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Object.js: | |
| (WebInspector.Object.addConstructorFunctions): Added. Copies the relevant functions | |
| the subclass constructor. | |
| (WebInspector.Object.addEventListener): Copied from WebInspector.Object.prototype. | |
| (WebInspector.Object.removeEventListener): Ditto. | |
| (WebInspector.Object.removeAllListeners): Ditto. | |
| (WebInspector.Object.hasEventListeners): Ditto. | |
| (WebInspector.Object.prototype.addEventListener): Set to WebInspector.Object version. | |
| (WebInspector.Object.prototype.removeEventListener): Ditto. | |
| (WebInspector.Object.prototype.removeAllListeners): Ditto. | |
| (WebInspector.Object.prototype.hasEventListeners): Ditto. | |
| (WebInspector.Object.prototype.dispatchEventToListeners): Dispatch to listeners of this specific object, | |
| and to listeners interested in all instances of this object's constructor. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Use Object.defineProperty for our extensions in WebInspector/Utilities.js so they don't show | |
| up when enumerating instances. | |
| This patch has whitespace changes stripped, but the indentation is correct. | |
| Reviewed by Ada Chan. | |
| * UserInterface/Utilities.js: | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Provide a direct way to ask if a WebInspector.Frame is the main frame. | |
| This is only needed in one place right now, but in the future it will be needed in more places. | |
| And checking !frame.parentFrame is not an accurate check if the frame is a detached subframe. | |
| Reviewed by Ada Chan. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): | |
| (WebInspector.Frame.prototype.isMainFrame): Added. | |
| (WebInspector.Frame.prototype.markAsMainFrame): Added. | |
| (WebInspector.Frame.prototype.unmarkAsMainFrame): Added. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.initialize): Call the renamed _mainFrameDidChange. | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._processMainFrameResourceTreePayload): Pass true for isMainFrame | |
| when calling _addFrameTreeFromFrameResourceTreePayload. | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): Call markAsMainFrame() | |
| if isMainFrame is true. | |
| (WebInspector.FrameResourceManager.prototype._mainFrameDidChange): Renamed from _dispatchMainFrameDidChangeEvent | |
| and now calls unmarkAsMainFrame and markAsMainFrame. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Use isMainFrame(). | |
| 2011-12-04 Timothy Hatcher <timothy@apple.com> | |
| Implement WebInspector.FontResourceContentView. | |
| The font preview includes horizontal lines showing the top, bottom, middle and baseline CSS alignments. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FontResourceContentView.css: Added. | |
| (.content-view.resource.font): | |
| (.content-view.resource.font .preview): | |
| (.content-view.resource.font .preview > .line): | |
| (.content-view.resource.font .preview > .line > .content): | |
| (.content-view.resource.font .preview > .line > .metric): | |
| (.content-view.resource.font .metric.top): | |
| (.content-view.resource.font .metric.baseline): | |
| (.content-view.resource.font .metric.middle): | |
| (.content-view.resource.font .metric.bottom): | |
| * UserInterface/FontResourceContentView.js: | |
| (WebInspector.FontResourceContentView): | |
| (WebInspector.FontResourceContentView.prototype.get previewElement): | |
| (WebInspector.FontResourceContentView.prototype.sizeToFit): Start at the maximum size and try each | |
| font size until minimum is reached. Stop when the preview element is not as wide as the main element. | |
| (WebInspector.FontResourceContentView.prototype.contentAvailable.createMetricElement): Helper function. | |
| (WebInspector.FontResourceContentView.prototype.contentAvailable): Create the elements for the preview. | |
| (WebInspector.FontResourceContentView.prototype.shown): Add the style element since it is removed when hidden. | |
| (WebInspector.FontResourceContentView.prototype.hidden): Remove the style element so it will not stick around | |
| when this content view is destroyed. | |
| * UserInterface/Main.html: Included FontResourceContentView.css. | |
| 2011-12-03 Timothy Hatcher <timothy@apple.com> | |
| Implement WebInspector.ImageResourceContentView. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ImageResourceContentView.css: Added. | |
| (.content-view.resource.image): Vertically and horizontally center the image. | |
| (.content-view.resource.image img): Set max width to 100% and allow dragging. | |
| * UserInterface/ImageResourceContentView.js: | |
| (WebInspector.ImageResourceContentView): Initialize _imageElement to null. | |
| (WebInspector.ImageResourceContentView.prototype.get imageElement): Added. | |
| (WebInspector.ImageResourceContentView.prototype.contentAvailable): Added. Create and append the _imageElement. | |
| * UserInterface/Main.html: Included ImageResourceContentView.css. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get contentURL): Added. Create a data URL if possible. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Call requestContent. | |
| (WebInspector.ResourceContentView.prototype.contentAvailable): Added. Implemented by subclasses. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Select the main resource when opening the Web Inspector and when the inspected page navigates. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Select and expand the main | |
| resource so something is selected by default. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Select the main | |
| resource since there are no other resources now. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Close all resource content views when the inspected page navigates in the main frame. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViewsOfPrototype): Added. | |
| (WebInspector.ContentViewContainer.prototype.closeAllContentViews): Added. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Remove an event listener from | |
| the old frame and add an event listener for MainResourceDidChange on the new frame. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameMainResourceDidChange): Added. Call | |
| closeAllContentViewsOfPrototype with WebInspector.ResourceContentView on the main content container. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Make selecting a resource in the Resources sidebar show the content view for that resource. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.contentViewForRepresentedObject): Added. | |
| (WebInspector.ContentViewContainer.prototype.showContentViewForRepresentedObject): Added. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Set onselect to _treeElementSelected. | |
| (WebInspector.ResourceSidebarPanel.prototype._treeElementSelected): Added. Call showContentViewForRepresentedObject | |
| on the main content container. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add support for knowing when a TreeElement is selected/deselected in a TreeOutline. | |
| There is already TreeElement.onselect which has been used in the past, | |
| but having a tree-wide notification of selection changes makes it easier | |
| to implement certain things. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/TreeOutline.js: | |
| (TreeElement.prototype.select): Call onselect on the TreeOutline if it exists. | |
| (TreeElement.prototype.deselect): Call ondeselect on the TreeOutline if it exists. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Support resource type changes by making a new ResourceContentView and replacing the old one. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer.prototype.replaceContentView): Added. Find all instances of the old one | |
| and replace it with the new one. | |
| * UserInterface/ResourceContentView.js: | |
| (WebInspector.ResourceContentView): Add event listener for TypeDidChange. | |
| (WebInspector.ResourceContentView.prototype._resourceTypeDidChange): Added. Make a new ResourceContentView | |
| which will use the new resource type to make the correct concrete ResourceContentView subclass. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add the "constructor" property to all prototypes in the Web Inspector. | |
| While working on a change that requires the constructor, I found it was always Object. | |
| This is because (thanks Gavin) the "constructor" property is added at runtime during | |
| the first lookup of the "prototype" property slot. But when "prototype" is assigned, | |
| like we do in the Web Inspector, the "constructor" property isn't present. | |
| Reviewed by John Sullivan. | |
| * UserInterface/ApplicationCacheObserver.js: | |
| * UserInterface/ConsoleObserver.js: | |
| * UserInterface/ContentView.js: | |
| * UserInterface/ContentViewContainer.js: | |
| * UserInterface/DOMObserver.js: | |
| * UserInterface/DOMStorageObserver.js: | |
| * UserInterface/DatabaseObserver.js: | |
| * UserInterface/DebuggerObserver.js: | |
| * UserInterface/FilterBar.js: | |
| * UserInterface/FolderTreeElement.js: | |
| * UserInterface/FontResourceContentView.js: | |
| * UserInterface/Frame.js: | |
| * UserInterface/FrameResourceManager.js: | |
| * UserInterface/FrameTreeElement.js: | |
| * UserInterface/GeneralTreeElement.js: | |
| * UserInterface/GenericResourceContentView.js: | |
| * UserInterface/ImageResourceContentView.js: | |
| * UserInterface/InspectorObserver.js: | |
| * UserInterface/NavigationBar.js: | |
| * UserInterface/NavigationSidebarPanel.js: | |
| * UserInterface/NetworkObserver.js: | |
| * UserInterface/Object.js: | |
| * UserInterface/PageObserver.js: | |
| * UserInterface/Resource.js: | |
| * UserInterface/ResourceCollection.js: | |
| * UserInterface/ResourceContentView.js: | |
| * UserInterface/ResourceSidebarPanel.js: | |
| * UserInterface/ResourceTreeElement.js: | |
| * UserInterface/Sidebar.js: | |
| * UserInterface/TextResourceContentView.js: | |
| * UserInterface/TreeOutline.js: | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| And WebInspector.ResourceContentView and concrete subclasses for Text, Image and Font resources. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentView.js: | |
| (WebInspector.ContentView): Create ResourceContentViews for Resources and Frames. | |
| * UserInterface/FontResourceContentView.js: Added. | |
| (WebInspector.FontResourceContentView): | |
| * UserInterface/GenericResourceContentView.js: Added. | |
| (WebInspector.GenericResourceContentView): | |
| * UserInterface/ImageResourceContentView.js: Added. | |
| (WebInspector.ImageResourceContentView): | |
| * UserInterface/Main.html: Included new files. | |
| * UserInterface/ResourceContentView.js: Added. | |
| (WebInspector.ResourceContentView): When instantiated directly return an instance of a type-based concrete subclass. | |
| (WebInspector.ResourceContentView.prototype.get resource): | |
| * UserInterface/TextResourceContentView.js: Added. | |
| (WebInspector.TextResourceContentView): | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add back/forward support to WebInspector.ContentViewContainer. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentViewContainer.js: | |
| (WebInspector.ContentViewContainer): Initialize _backForwardList and _currentIndex. | |
| (WebInspector.ContentViewContainer.prototype.get currentIndex): Added. | |
| (WebInspector.ContentViewContainer.prototype.get backForwardList): Added. | |
| (WebInspector.ContentViewContainer.prototype.get currentContentView): Use _backForwardList and _currentIndex. | |
| (WebInspector.ContentViewContainer.prototype.showContentView): Insert the content view at the new current index. | |
| This will remove any content views greater than or equal to the index. Call showBackForwardEntry for the index. | |
| (WebInspector.ContentViewContainer.prototype.showBackForwardEntry): Added. | |
| (WebInspector.ContentViewContainer.prototype.canGoBack): Added. | |
| (WebInspector.ContentViewContainer.prototype.canGoForward): Added. | |
| (WebInspector.ContentViewContainer.prototype.goBack): Added. | |
| (WebInspector.ContentViewContainer.prototype.goForward): Added. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ContentView and WebInspector.ContentViewContainer. | |
| These classes will be used to display content for resources and other data. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/ContentView.js: Added. | |
| (WebInspector.ContentView): | |
| (WebInspector.ContentView.prototype.get element): | |
| (WebInspector.ContentView.prototype.get parentContainer): | |
| (WebInspector.ContentView.prototype.get visible): | |
| (WebInspector.ContentView.prototype.set visible): | |
| (WebInspector.ContentView.prototype.shown): | |
| (WebInspector.ContentView.prototype.hidden): | |
| * UserInterface/ContentViewContainer.css: Added. | |
| (.content-view-container): Display relative to allow positioned content. | |
| (.content-view-container > .content-view): Position to fill the container. | |
| (.content-view-container > .content-view:not(.visible)): Display none. | |
| * UserInterface/ContentViewContainer.js: Added. | |
| (WebInspector.ContentViewContainer): | |
| (WebInspector.ContentViewContainer.prototype.get element): | |
| (WebInspector.ContentViewContainer.prototype.get currentContentView): | |
| (WebInspector.ContentViewContainer.prototype.showContentView): | |
| (WebInspector.ContentViewContainer.prototype._addContentViewElement): | |
| (WebInspector.ContentViewContainer.prototype._removeContentViewElement): | |
| (WebInspector.ContentViewContainer.prototype._showContentView): | |
| (WebInspector.ContentViewContainer.prototype._hideContentView): | |
| * UserInterface/Main.css: | |
| (#content-views): Renamed from #content-panels. | |
| * UserInterface/Main.html: Included ContentViewContainer.js and ContentViewContainer.css. Also renamed | |
| content-panels to content-views. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an instance of ContentViewContainer that uses the #content-views div. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add support for getting the content of a resource in preparation for showing that content. | |
| Part of: <rdar://problem/10488422> Implement Resource views for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Initialize _content, _pendingContentRequestCallbacks and _contentIsBase64Encoded. | |
| (WebInspector.Resource.prototype.get content): Added. | |
| (WebInspector.Resource.prototype.get contentIsBase64Encoded): Added. | |
| (WebInspector.Resource.prototype.requestContent): Added. Queues the callback and requests the content if needed. | |
| (WebInspector.Resource.prototype.markAsFinished): Call _requestContentFromBackend if there are pending requests. | |
| (WebInspector.Resource.prototype.markAsFailed): Call _servicePendingContentRequests. | |
| (WebInspector.Resource.prototype._requestContentFromBackend): Added. Use the NetworkPageAgent depending on if | |
| we have a requestIdentifier for this Resource. | |
| (WebInspector.Resource.prototype._processContent): Added. Store the content and call _servicePendingContentRequests. | |
| (WebInspector.Resource.prototype._servicePendingContentRequests): Added. Call all the pending callbacks with the content. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Mark resources loaded from the memory cache as finished in the Web Inspector so their content can be requested. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Call markAsFinished. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add requestIdentifier to WebInspector.Resource. | |
| The requestIdentifier will be needed for getting the resource content from the backend. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Pass null for the requestIdentifier. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Pass the requestIdentifier. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Ditto. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Ditto. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Added requestIdentifier parameter. | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Pass null for requestIdentifier. | |
| (WebInspector.FrameResourceManager.prototype._createResource): Ditto. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added requestIdentifier parameter. | |
| (WebInspector.Resource.prototype.get requestIdentifier): Added. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Override the cursor to prevent the I-beam over various text UI elements in the Web Inspector. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.css: | |
| (body): Set cursor to default. | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Call preventDefault and stopPropagation in various event listeners in the Web Inspector. | |
| This prevents text selection while dragging the sidebar resizer or scrubbing a navigation bar. | |
| It also prevents text selection when double clicking the sidebar resizer. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype._mouseDown): | |
| (WebInspector.NavigationBar.prototype._mouseMoved): | |
| (WebInspector.NavigationBar.prototype._mouseUp): | |
| (WebInspector.NavigationBar.prototype._keyDown): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype._resizerDoubleClicked): | |
| (WebInspector.Sidebar.prototype._resizerMouseDown): | |
| (WebInspector.Sidebar.prototype._resizerMouseMoved): | |
| (WebInspector.Sidebar.prototype._resizerMouseUp): | |
| 2011-12-05 Timothy Hatcher <timothy@apple.com> | |
| Add a build phase copy of InspectorBackend.js from WebCore and rename the | |
| InspectorBackendStub.js copied file to InspectorBackendCommands.js. | |
| The InspectorBackend.js file split out of the generated InspectorBackendStub.js | |
| in r101670, and both files are needed to be useful. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.html: Include InspectorBackendCommands.js. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Update the WebCore Inspector Resources build pahse. | |
| 2011-11-29 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ResourceCollection to simplify parts of WebInspector.Frame. | |
| The ResourceCollection class tracks resources it holds for URL and type changes | |
| and updates internal mappings accordingly. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): Create a ResourceCollection instead of multiple arrays/maps. | |
| (WebInspector.Frame.prototype.initialize): Call clearProvisionalLoad before the main | |
| resource did change event. | |
| (WebInspector.Frame.prototype.startProvisionalLoad): Create a provisional ResourceCollection. | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): Commit the provisional ResourceCollection. | |
| Added an early return to prevent exceptions if this is called when there isn't provisional load. | |
| (WebInspector.Frame.prototype.clearProvisionalLoad): Added an early return and clear the ResourceCollection. | |
| (WebInspector.Frame.prototype.get resources): Use ResourceCollection. | |
| (WebInspector.Frame.prototype.resourceForURL): Ditto. | |
| (WebInspector.Frame.prototype.resourcesWithType): Ditto. | |
| (WebInspector.Frame.prototype.addResource): Moved the add code from _associateWithResource and use the | |
| new _isProvisionalResource function to check which ResourceCollection to add the resource to. | |
| (WebInspector.Frame.prototype.removeResource): Use ResourceCollection. | |
| (WebInspector.Frame.prototype.removeAllResources): Ditto. | |
| (WebInspector.Frame.prototype._isProvisionalResource): Added. | |
| (WebInspector.Frame.prototype._associateWithResource): Only set _childFrame. | |
| (WebInspector.Frame.prototype._disassociateWithResource): Only clear _childFrame. | |
| * UserInterface/Main.html: Included ResourceCollection.js. | |
| * UserInterface/ResourceCollection.js: Added. Broken out of Frame.js. | |
| (WebInspector.ResourceCollection): | |
| (WebInspector.ResourceCollection.prototype.get resources): | |
| (WebInspector.ResourceCollection.prototype.resourceForURL): | |
| (WebInspector.ResourceCollection.prototype.resourcesWithType): | |
| (WebInspector.ResourceCollection.prototype.addResource): | |
| (WebInspector.ResourceCollection.prototype.removeResource): | |
| (WebInspector.ResourceCollection.prototype.removeAllResources): | |
| (WebInspector.ResourceCollection.prototype._associateWithResource): | |
| (WebInspector.ResourceCollection.prototype._disassociateWithResource): | |
| (WebInspector.ResourceCollection.prototype._resourceURLDidChange): | |
| (WebInspector.ResourceCollection.prototype._resourceTypeDidChange): | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Improve glob filtering in the Resources sidebar of the new Web Inspector. | |
| Match edge boundaries when there is an asterisk to better meet the expectations | |
| of the user. When someone types "*.js" they don't expect "foo.json" to match. They | |
| would only expect that if they type "*.js*". We use \b (instead of ^ and $) to allow | |
| matches inside paths or URLs, so "ba*.js" will match "foo/bar.js" but not "boo/bbar.js". | |
| When there isn't an asterisk the regexString is just a substring search. Also properly | |
| ignore escaped asterisks and collapse consecutive asterisks down to one. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Utilities.js: | |
| (simpleGlobStringToRegExp): | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Show a message in the sidebar when it is empty because there are no filter matches. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .content.hidden): Added. | |
| (.sidebar > .panel.navigation > .empty-content-placeholder): Added. | |
| (.sidebar > .panel.navigation > .empty-content-placeholder > .message): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Create the empty content placeholder elements. | |
| (WebInspector.NavigationSidebarPanel.prototype.showEmptyContentPlaceholder): Set the message and add the element. | |
| (WebInspector.NavigationSidebarPanel.prototype.hideEmptyContentPlaceholder): Remove the element. | |
| (WebInspector.NavigationSidebarPanel.prototype._checkForEmptyFilterResults): Added. Check for hidden top level elements. | |
| (WebInspector.NavigationSidebarPanel.prototype._updateFilter): Call _checkForEmptyFilterResults. | |
| (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Ditto. | |
| * UserInterface/Sidebar.css: | |
| (.sidebar > .panel): Make overflow hidden so when the sidebar is collapsed the empty placeholder doesn't stick out. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add text filtering support to WebInspector.NavigationSidebarPanel. | |
| This makes it so you can filter the resource list, matching against the URLs. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FilterBar.js: | |
| (WebInspector.FilterBar): Add an search event listener and set incremental to true. | |
| (WebInspector.FilterBar.prototype.get filters): Added. | |
| (WebInspector.FilterBar.prototype.hasActiveFilters): Added. | |
| (WebInspector.FilterBar.prototype._inputFieldChanged): Added. Dispatch the TextFilterDidChange event. | |
| * UserInterface/GeneralTreeElement.js: | |
| (WebInspector.GeneralTreeElement.prototype.set mainTitle): Call didChange. | |
| (WebInspector.GeneralTreeElement.prototype.set subtitle): Ditto. | |
| (WebInspector.GeneralTreeElement.prototype.get filterableData): Added. Returns the URL. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.navigation-sidebar-panel-content-tree-outline .hidden): Added. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Set onadd and onchange on the TreeOutline. Listen for | |
| the TextFilterDidChange event. | |
| (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.matchTextFilter): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.applyFiltersToTreeElement.makeVisible): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype._updateFilter): Added. Call applyFiltersToTreeElement. | |
| (WebInspector.NavigationSidebarPanel.prototype._treeElementAddedOrChanged): Added. Call applyFiltersToTreeElement. | |
| * UserInterface/Utilities.js: | |
| (String.prototype.escapeCharacters): Copied from WebCore/inspector/front-end/utilities.js. | |
| (String.prototype.escapeForRegExp): Copied from WebCore/inspector/front-end/utilities.js. | |
| (simpleGlobStringToRegExp): Added. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FilterBar to be used in navigation sidebar panels. | |
| The filter bar only contains a specially styled search field in this change. | |
| It does not actually filter the sidebar yet. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FilterBar.css: Added. | |
| (.filter-bar): Styled like the filter bar in Xcode 4. | |
| (.filter-bar > input[type="search"]): Set the margins and prevent an outline on focus. | |
| (.filter-bar > input[type="search"]::-webkit-search-decoration): Replace the search | |
| magnifying glass with the filter glyph. | |
| * UserInterface/FilterBar.js: Added. | |
| (WebInspector.FilterBar): | |
| (WebInspector.FilterBar.prototype.get element): | |
| (WebInspector.FilterBar.prototype.get inputField): | |
| * UserInterface/Images/FilterFieldGlyph.pdf: Added. | |
| * UserInterface/Main.html: Included FilterBar.js and FilterBar.css. | |
| * UserInterface/NavigationSidebarPanel.css: | |
| (.sidebar > .panel.navigation > .filter-bar): Position at the bottom. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Create a FilterBar. | |
| (WebInspector.NavigationSidebarPanel.prototype.get filterBar): Added. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Handle getting a resource load responce without getting the request first. | |
| If the Web Inspector is opened while loading a page we can miss the resourceRequestWillBeSent call. | |
| In that case we might get a respose but not know the resource yet, so make a new resource and add it. | |
| Reviewed by Anders Carlsson. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Make a new resource if | |
| one isn't found in the request identifier map. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.responseReceived): Pass the frameId and loaderId along. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Store the request and response headers on WebInspector.Resource. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Anders Carlsson. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Pass null for the requestHeaders in a couple of places. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Pass the requestHeaders along. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Pass null for the requestHeaders. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Pass the responseHeaders along to updateForResponse. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Added an argument for requestHeaders. | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Pass null for the requestHeaders. | |
| (WebInspector.FrameResourceManager.prototype._createResource): Ditto. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added requestHeaders argument. | |
| (WebInspector.Resource.prototype.get requestHeaders): Added. | |
| (WebInspector.Resource.prototype.get responseHeaders): Added. | |
| (WebInspector.Resource.prototype.updateForResponse): Added responseHeaders argument and fire the ResponseHeadersDidChange event. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Keep track of failed, canceled and finished resources in the Web Inspector. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): Call markAsFinished. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): Added canceled argument and call markAsFailed. | |
| (WebInspector.FrameResourceManager.prototype._createResource): Call markAsFinished. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.loadingFailed): Pass along the canceled argument. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get finished): Added. | |
| (WebInspector.Resource.prototype.get failed): Added. | |
| (WebInspector.Resource.prototype.get canceled): Added. | |
| (WebInspector.Resource.prototype.updateForRedirectResponse): Added asserts that loading hasn't failed, finished or canceled. | |
| (WebInspector.Resource.prototype.updateForResponse): Ditto. | |
| (WebInspector.Resource.prototype.markAsFinished): Added. | |
| (WebInspector.Resource.prototype.markAsFailed): Added. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Sort folders by name, resources by type and name in the Web Inspector sidebar. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype.descendantResourceTreeElementTypeDidChange): Remove the check for _groupedIntoFolders | |
| since we sort by type in non-folder mode now. Updated the comment. | |
| (WebInspector.FrameTreeElement.prototype.descendantResourceTreeElementMainTitleDidChange): Added. | |
| (WebInspector.FrameTreeElement.prototype._addTreeElement): Use _insertRootFolderTreeElement and _insertResourceTreeElement. | |
| (WebInspector.FrameTreeElement.prototype._compareTreeElementsByMainTitle): Added. | |
| (WebInspector.FrameTreeElement.prototype._insertFolderTreeElement): Added. | |
| (WebInspector.FrameTreeElement.prototype._compareResourceTreeElements): Added. | |
| (WebInspector.FrameTreeElement.prototype._insertResourceTreeElement): Added. | |
| * UserInterface/Main.html: Included BinarySearch.js. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Call descendantResourceTreeElementMainTitleDidChange on the first ancestor | |
| if the main title changed. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Queue new resources and frames to add them in bulk every half a second. | |
| This reduces flashing in the Web Inspector sidebar as resources load and change folders as their type becomes known. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement): Initialize _newChildQueue. | |
| (WebInspector.FrameTreeElement.prototype.onpopulate): Call _clearNewChildQueue. | |
| (WebInspector.FrameTreeElement.prototype._mainResourceDidChange): Ditto. | |
| (WebInspector.FrameTreeElement.prototype._resourceWasAdded): Use _addRepresentedObjectToNewChildQueue. | |
| (WebInspector.FrameTreeElement.prototype._childFrameWasAdded): Ditto. | |
| (WebInspector.FrameTreeElement.prototype._addRepresentedObjectToNewChildQueue): Added. Adds the item to the queue and starts | |
| a timer if one isn't already pending. | |
| (WebInspector.FrameTreeElement.prototype._removeRepresentedObjectFromNewChildQueue): Added. Removes the item from the queue. | |
| (WebInspector.FrameTreeElement.prototype._populateFromNewChildQueue): Added. Call _addChildForRepresentedObject | |
| for each item in the queue. | |
| (WebInspector.FrameTreeElement.prototype._clearNewChildQueue): Added. Clears the queue. | |
| (WebInspector.FrameTreeElement.prototype._removeChildForRepresentedObject): Call _removeRepresentedObjectFromNewChildQueue. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Remember expanded frames when the main resource changes during navigation. Also auto expand the main frame. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype._mainResourceDidChange): Remember if this tree element was expanded. | |
| (WebInspector.FrameTreeElement.prototype._addChildForRepresentedObject): Expand if needed. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Expand when the main frame is created. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Group resources into folders once certain resource count thresholds are met. | |
| Resources and Frames are grouped into folders if one of two thresholds are met: | |
| 1) Once the number of medium categories passes NumberOfMediumCategoriesThreshold. | |
| 2) When there is a category that passes LargeChildCountThreshold and there are | |
| any resources in another category. | |
| Folders are avoided when there is only one category or most categories are small. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameTreeElement.js: | |
| (WebInspector.FrameTreeElement.prototype.descendantResourceTreeElementTypeDidChange): Added. Called by ResourceTreeElement. | |
| (WebInspector.FrameTreeElement.prototype.onpopulate): Call _shouldGroupIntoFolders and use _addTreeElement. | |
| (WebInspector.FrameTreeElement.prototype._mainResourceDidChange): Reset _groupedIntoFolders to false. | |
| (WebInspector.FrameTreeElement.prototype._addChildForRepresentedObject): Call _shouldGroupIntoFolders and use _addTreeElement. | |
| (WebInspector.FrameTreeElement.prototype._removeChildForRepresentedObject): Remove the parent if it is an empty folder. | |
| (WebInspector.FrameTreeElement.prototype._addTreeElement): Added. Adds the tree element to the right folder. | |
| (WebInspector.FrameTreeElement.prototype._removeTreeElement): Added. Removes the tree element and empty folders. | |
| (WebInspector.FrameTreeElement.prototype._folderNameForResourceType): Added. | |
| (WebInspector.FrameTreeElement.prototype._parentTreeElementForRepresentedObject): Added. Make the folder tree element if needed. | |
| (WebInspector.FrameTreeElement.prototype._shouldGroupIntoFolders): Added. Calculates if folders are needed. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._typeDidChange): Use _callFirstAncestorFunction to call descendantResourceTreeElementTypeDidChange. | |
| (WebInspector.ResourceTreeElement.prototype._callFirstAncestorFunction): Added. Call the first ancestor that implements a function. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FolderTreeElement to be used in navigation sidebar panels. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/FolderTreeElement.css: Added. | |
| (.folder-tree-element .icon): | |
| * UserInterface/FolderTreeElement.js: Added. | |
| (WebInspector.FolderTreeElement): | |
| * UserInterface/Images/FolderGeneric.png: Added. | |
| * UserInterface/Images/FolderGeneric@2x.png: Added. | |
| * UserInterface/Main.html: Included FolderTreeElement.css and FolderTreeElement.js. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Remember resources by type for each frame in the Web Inspector. | |
| This will be used to organize the sidebar into folders for each type of resource. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): Initialize _resourcesTypeMap and _provisionalResourcesTypeMap. | |
| (WebInspector.Frame.prototype.startProvisionalLoad): Initialize _provisionalResourcesURLMap. | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): Commit _provisionalResourcesURLMap over to _resourcesTypeMap. | |
| (WebInspector.Frame.prototype.clearProvisionalLoad): Initialize _provisionalResourcesURLMap. | |
| (WebInspector.Frame.prototype.resourcesWithType): Added. Lookup in _resourcesTypeMap. | |
| (WebInspector.Frame.prototype.removeAllResources): Initialize _resourcesTypeMap. | |
| (WebInspector.Frame.prototype._associateWithResource): Added resource to the type map. | |
| (WebInspector.Frame.prototype._disassociateWithResource): Remove the resource from the type map. | |
| (WebInspector.Frame.prototype._resourceTypeDidChange): Update the resource type map. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add icons for document, image, font, style, script and generic resource types in the Web Inspector. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/DocumentCSS.png: Added. | |
| * UserInterface/Images/DocumentCSS@2x.png: Added. | |
| * UserInterface/Images/DocumentFont.png: Added. | |
| * UserInterface/Images/DocumentFont@2x.png: Added. | |
| * UserInterface/Images/DocumentGeneric.png: Added. | |
| * UserInterface/Images/DocumentGeneric@2x.png: Added. | |
| * UserInterface/Images/DocumentImage.png: Added. | |
| * UserInterface/Images/DocumentImage@2x.png: Added. | |
| * UserInterface/Images/DocumentJS.png: Added. | |
| * UserInterface/Images/DocumentJS@2x.png: Added. | |
| * UserInterface/Images/DocumentMarkup.png: Added. | |
| * UserInterface/Images/DocumentMarkup@2x.png: Added. | |
| * UserInterface/Main.html: Included ResourceTreeElement.css. | |
| * UserInterface/ResourceTreeElement.css: Added. | |
| (.resource-tree-element .icon): | |
| (.resource-tree-element.resource-type-document .icon): | |
| (.resource-tree-element.resource-type-image .icon): | |
| (.resource-tree-element.resource-type-stylesheet .icon): | |
| (.resource-tree-element.resource-type-script .icon): | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement): Use the resource type as a class. | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): Added TypeDidChange event listener. | |
| (WebInspector.ResourceTreeElement.prototype._typeDidChange): Added. Update the classNames with the new type. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Display the last path component instead of the full URL in the Web Inspector's Resource sidebar panel. | |
| Show the host as the subtitle if it is different from the main resource or if this is the main frame's main resource. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.get urlComponents): Added. Calls parseURL if needed. | |
| (WebInspector.Resource.prototype.updateForRedirectResponse): Delete the URL components so the URL is re-parsed the | |
| next time it is requested. | |
| (WebInspector.Resource.prototype.updateForResponse): Ditto. | |
| * UserInterface/ResourceTreeElement.js: | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Set the mainTitle and subtitle based on the urlComponents. | |
| * UserInterface/Utilities.js: | |
| (parseURL): Added. Parses a URL into its components. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Populate the WebInspector's Resource sidebar panel with frame and resource tree elements. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/FrameTreeElement.js: Added. | |
| (WebInspector.FrameTreeElement): Set up event listeners. | |
| (WebInspector.FrameTreeElement.prototype.get frame): Returns _frame. | |
| (WebInspector.FrameTreeElement.prototype.onpopulate): Add child frames and resources. | |
| (WebInspector.FrameTreeElement.prototype._updateParentStatus): Update hasChildren. | |
| (WebInspector.FrameTreeElement.prototype._mainResourceDidChange): Update the resource and remove children. | |
| (WebInspector.FrameTreeElement.prototype._resourceWasAdded): Call _addChildForRepresentedObject. | |
| (WebInspector.FrameTreeElement.prototype._resourceWasRemoved): Call _removeChildForRepresentedObject. | |
| (WebInspector.FrameTreeElement.prototype._childFrameWasAdded): Call _addChildForRepresentedObject. | |
| (WebInspector.FrameTreeElement.prototype._childFrameWasRemoved): Call _removeChildForRepresentedObject. | |
| (WebInspector.FrameTreeElement.prototype._addChildForRepresentedObject): Update parent status and append the new tree element. | |
| (WebInspector.FrameTreeElement.prototype._removeChildForRepresentedObject): Update parent status and remove the tree element. | |
| * UserInterface/Main.html: Include FrameTreeElement.js and ResourceTreeElement.js. | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Add MainFrameDidChange event listener. | |
| (WebInspector.ResourceSidebarPanel.prototype._mainFrameDidChange): Added. | |
| * UserInterface/ResourceTreeElement.js: Added. | |
| (WebInspector.ResourceTreeElement): | |
| (WebInspector.ResourceTreeElement.prototype.get resource): Returns _resource. | |
| (WebInspector.ResourceTreeElement.prototype._updateResource): Setup event listeners and update titles. | |
| (WebInspector.ResourceTreeElement.prototype._updateTitles): Set the mainTitle to the URL for now. | |
| (WebInspector.ResourceTreeElement.prototype._urlDidChange): Update the titles. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.GeneralTreeElement to be used in navigation sidebar panels. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/GeneralTreeElement.js: Added. | |
| (WebInspector.GeneralTreeElement): | |
| (WebInspector.GeneralTreeElement.prototype.get element): | |
| (WebInspector.GeneralTreeElement.prototype.get disclosureButton): | |
| (WebInspector.GeneralTreeElement.prototype.get iconElement): | |
| (WebInspector.GeneralTreeElement.prototype.get titlesElement): | |
| (WebInspector.GeneralTreeElement.prototype.get mainTitleElement): | |
| (WebInspector.GeneralTreeElement.prototype.get subtitleElement): | |
| (WebInspector.GeneralTreeElement.prototype.get classNames): | |
| (WebInspector.GeneralTreeElement.prototype.set classNames): | |
| (WebInspector.GeneralTreeElement.prototype.get small): | |
| (WebInspector.GeneralTreeElement.prototype.set small): | |
| (WebInspector.GeneralTreeElement.prototype.get mainTitle): | |
| (WebInspector.GeneralTreeElement.prototype.set mainTitle): | |
| (WebInspector.GeneralTreeElement.prototype.get subtitle): | |
| (WebInspector.GeneralTreeElement.prototype.set subtitle): | |
| (WebInspector.GeneralTreeElement.prototype.isEventWithinDisclosureTriangle): | |
| (WebInspector.GeneralTreeElement.prototype.onattach): | |
| (WebInspector.GeneralTreeElement.prototype.onreveal): | |
| (WebInspector.GeneralTreeElement.prototype._createElementsIfNeeded): | |
| (WebInspector.GeneralTreeElement.prototype._createSubtitleElementIfNeeded): | |
| (WebInspector.GeneralTreeElement.prototype._updateTitleElements): | |
| * UserInterface/Main.html: Add GeneralTreeElement.js. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Generate disclosure triangles from PDFs for the Web Inspector's navigation sidebar. | |
| The disclosure triangles are a solid color plus a shadow for a normal and selected state. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ImageUtilities.js: Added. | |
| (generateColoredImage): Take an input image and fill the image with a color while preserving the alpha. | |
| * UserInterface/Images/DisclosureTriangleSmallClosed.pdf: Added. | |
| * UserInterface/Images/DisclosureTriangleSmallOpen.pdf: Added. | |
| * UserInterface/Main.html: Added ImageUtilities.js. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Call _generateDisclosureTrianglesIfNeeded. | |
| (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded): Load the open and closed images. | |
| (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded._disclosureImageLoaded): Call | |
| _generateDisclosureTriangle for the normal and selected state with different colors for each. | |
| (WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded._generateDisclosureTriangle): | |
| Fill the image with the color and draw it with the desired shadow. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Create a TreeOutline for WebInspector.NavigationSidebarPanel that is styled like Xcode 4's Project Navigator. | |
| The disclosure triangle generation is not part of this change, they will come in a later change. | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/Main.html: Included TreeOutline.js. | |
| * UserInterface/NavigationSidebarPanel.css: Style rules for .navigation-sidebar-panel-content-tree-outline | |
| and decedent elements. | |
| * UserInterface/NavigationSidebarPanel.js: | |
| (WebInspector.NavigationSidebarPanel): Create the TreeOutline and its element. Call _generateStyleRulesIfNeeded. | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentElement): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutlineElement): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentTreeOutline): Added. | |
| (WebInspector.NavigationSidebarPanel.prototype._generateStyleRulesIfNeeded): Added. Make repetitive style rules for | |
| 15 levels of indentation. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.NavigationSidebarPanel as a base class for all navigation | |
| sidebar panels so they can share code for the content element and filter bar. | |
| Only the content element is there now, the filter bar is coming later. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.html: Add NavigationSidebarPanel.js and NavigationSidebarPanel.css. | |
| * UserInterface/NavigationSidebarPanel.css: Added. | |
| (.sidebar > .panel.navigation > .content): Account for 22px at the bottom for the future | |
| filter bar height. | |
| * UserInterface/NavigationSidebarPanel.js: Added. | |
| (WebInspector.NavigationSidebarPanel): | |
| (WebInspector.NavigationSidebarPanel.prototype.get contentElement): | |
| * UserInterface/ResourceSidebarPanel.js: | |
| (WebInspector.ResourceSidebarPanel): Inherit from NavigationSidebarPanel instead of SidebarPanel. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add events to the Web Inspector for frame and resource changes. | |
| These events will be used to keep the user interface up-to-date. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.initialize): | |
| (WebInspector.Frame.prototype.startProvisionalLoad): | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): | |
| (WebInspector.Frame.prototype.clearProvisionalLoad): | |
| (WebInspector.Frame.prototype.addChildFrame): | |
| (WebInspector.Frame.prototype.removeChildFrame): | |
| (WebInspector.Frame.prototype.removeAllChildFrames): | |
| (WebInspector.Frame.prototype.addResource): | |
| (WebInspector.Frame.prototype.removeResource): | |
| (WebInspector.Frame.prototype.removeAllResources): | |
| (WebInspector.Frame.prototype._resourceURLDidChange): | |
| (WebInspector.Frame.prototype._dispatchMainResourceDidChangeEvent): | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.initialize): | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): | |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): | |
| (WebInspector.FrameResourceManager.prototype._processMainFrameResourceTreePayload): | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): | |
| (WebInspector.FrameResourceManager.prototype._dispatchFrameWasAddedEvent): | |
| (WebInspector.FrameResourceManager.prototype._dispatchMainFrameDidChangeEvent): | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource.prototype.updateForResponse): | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Keep WebInspector.FrameResourceManager up-to-date during resource loads. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): | |
| (WebInspector.Frame.prototype.initialize): Add an assert. Set the loaderIdentifier and call clearProvisionalLoad. | |
| (WebInspector.Frame.prototype.startProvisionalLoad): Added. | |
| (WebInspector.Frame.prototype.commitProvisionalLoad): Added. | |
| (WebInspector.Frame.prototype.clearProvisionalLoad): Added. | |
| (WebInspector.Frame.prototype.get loaderIdentifier): Added. | |
| (WebInspector.Frame.prototype.get provisionalLoaderIdentifier): Added. | |
| (WebInspector.Frame.prototype.get provisionalMainResource): Added. | |
| (WebInspector.Frame.prototype.addResource): Use _associateWithResource. | |
| (WebInspector.Frame.prototype.removeResource): Use _disassociateWithResource. | |
| (WebInspector.Frame.prototype.removeAllResources): Ditto. | |
| (WebInspector.Frame.prototype._associateWithResource): Added. | |
| (WebInspector.Frame.prototype._disassociateWithResource): Added. | |
| (WebInspector.Frame.prototype._resourceURLDidChange): Added. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager): Enable the NetworkAgent. | |
| (WebInspector.FrameResourceManager.prototype.initialize): Initialize _resourceRequestIdentifierMap. | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Call commitProvisionalLoad if this was the provisionalLoaderIdentifier. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestWasServedFromMemoryCache): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidReceiveResponse): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFinishLoading): Added. | |
| (WebInspector.FrameResourceManager.prototype.resourceRequestDidFailLoading): Added. | |
| (WebInspector.FrameResourceManager.prototype._addNewResourceToFrame): Added. | |
| (WebInspector.FrameResourceManager.prototype._addResourceToFrame): Added. | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Pass the loaderId. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): Call FrameResourceManager. | |
| (WebInspector.NetworkObserver.prototype.responseReceived): Ditto. | |
| (WebInspector.NetworkObserver.prototype.loadingFinished): Ditto. | |
| (WebInspector.NetworkObserver.prototype.loadingFailed): Ditto. | |
| (WebInspector.NetworkObserver.prototype.requestServedFromMemoryCache): Ditto. | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.prototype.frameNavigated): Pass the loaderId. | |
| * UserInterface/Resource.js: | |
| (WebInspector.Resource): Added loaderIdentifier. | |
| (WebInspector.Resource.prototype.get loaderIdentifier): Added. | |
| (WebInspector.Resource.prototype.updateForRedirectResponse): Added. | |
| (WebInspector.Resource.prototype.updateForResponse): Added. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.Resource and populate existing resources for page frames. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Sam Weinig. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame.prototype.initialize): Remove _url and _mimeType. Add _mainResource, _resources and _resourceURLMap. | |
| (WebInspector.Frame.prototype.get url): Get the URL from the mainResource. | |
| (WebInspector.Frame.prototype.get mainResource): Added. | |
| (WebInspector.Frame.prototype.get resources): Added. | |
| (WebInspector.Frame.prototype.resourceForURL): Added. | |
| (WebInspector.Frame.prototype.addResource): Added. | |
| (WebInspector.Frame.prototype.removeResource): Added. | |
| (WebInspector.Frame.prototype.removeAllResources): Added. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype._createResource): Added. | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): Call _createResource for each | |
| resource in the payload. | |
| * UserInterface/Main.html: | |
| * UserInterface/Resource.js: Added. | |
| (WebInspector.Resource): | |
| (WebInspector.Resource.Type.fromMIMEType): | |
| (WebInspector.Resource.prototype.get url): | |
| (WebInspector.Resource.prototype.get type): | |
| (WebInspector.Resource.prototype.get mimeType): | |
| (WebInspector.Resource.prototype.get parentFrame): | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Keep WebInspector.FrameResourceManager up-to-date during navigation, adding and detaching frames. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Ada Chan. | |
| * UserInterface/Frame.js: | |
| (WebInspector.Frame): Call initialize. | |
| (WebInspector.Frame.prototype.initialize): Added. | |
| (WebInspector.Frame.prototype.get parentFrame): Added. | |
| (WebInspector.Frame.prototype.childFrameForIdentifier): Added. | |
| (WebInspector.Frame.prototype.addChildFrame): Call removeChildFrame on the previous parentFrame. Set parentFrame. | |
| (WebInspector.Frame.prototype.removeChildFrame): Added. | |
| (WebInspector.Frame.prototype.removeAllChildFrames): Added. | |
| * UserInterface/FrameResourceManager.js: | |
| (WebInspector.FrameResourceManager.prototype.frameForIdentifier): Added. | |
| (WebInspector.FrameResourceManager.prototype.frameDidNavigate): Added. | |
| (WebInspector.FrameResourceManager.prototype.frameDidDetach): Added. | |
| (WebInspector.FrameResourceManager.prototype._createFrame): Added. | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): Use _createFrame. | |
| * UserInterface/PageObserver.js: | |
| (WebInspector.PageObserver.prototype.frameNavigated): Call WebInspector.FrameResourceManager.frameDidNavigate. | |
| (WebInspector.PageObserver.prototype.frameDetached): Call WebInspector.FrameResourceManager.frameDidDetach. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FrameResourceManager and have it build up the basic frame tree for the inspected page. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/Frame.js: Added. | |
| (WebInspector.Frame): | |
| (WebInspector.Frame.prototype.get id): | |
| (WebInspector.Frame.prototype.get name): | |
| (WebInspector.Frame.prototype.get url): | |
| (WebInspector.Frame.prototype.get childFrames): | |
| (WebInspector.Frame.prototype.addChildFrame): | |
| * UserInterface/FrameResourceManager.js: Added. | |
| (WebInspector.FrameResourceManager): | |
| (WebInspector.FrameResourceManager.prototype.initialize): | |
| (WebInspector.FrameResourceManager.prototype.get mainFrame): | |
| (WebInspector.FrameResourceManager.prototype._processMainFrameResourceTreePayload): | |
| (WebInspector.FrameResourceManager.prototype._addFrameTreeFromFrameResourceTreePayload): | |
| * UserInterface/Main.html: Include Frame.js and FrameResourceManager.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Create an instance of WebInspector.FrameResourceManager. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Reorder the calls in WebInspector.contentLoaded to put InspectorBackend first. | |
| This is needed so that the InspectorBackend is ready to use by the user interface elements. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Add Element.removeChildren, Array.remove and isEnterKey for the Web Inspector, | |
| which are needed by TreeOutline. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Utilities.js: | |
| (Element.prototype.removeChildren): Added. | |
| (Array.prototype.remove): Added. | |
| (isEnterKey): Added. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Copy the treeoutline.js file from the OpenSource to use in the new Web Inspector. | |
| Rubber-stamped by Dan Bernstein. | |
| * UserInterface/TreeOutline.js: Copied from WebCore/inspector/front-end/treeoutline.js. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Copy the BinarySearch.js file from the OpenSource to use in the new Web Inspector. | |
| Rubber-stamped by Dan Bernstein. | |
| * UserInterface/BinarySearch.js: Copied from WebCore/inspector/front-end/BinarySearch.js. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Make double clicking a sidebar divider toggle the collapsed state of the sidebar. | |
| Reviewed by Dan Bernstein. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): Add dblclick event listener on the resizer element. | |
| (WebInspector.Sidebar.prototype._resizerDoubleClicked): Toggle the collapsed state. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Make Element.totalOffsetLeft and Element.totalOffsetTop getters again. | |
| Historically these were getters until a Google engineer changed them. | |
| I didn't realize they weren't anymore and used totalOffsetTop as a | |
| getter when making WebInspector.NavigationBar, which is a bug. | |
| Reviewed by Darin Adler. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype._resizerMouseMoved): Remove the function call | |
| when using totalOffsetLeft. | |
| * UserInterface/Utilities.js: | |
| (Element.prototype.totalOffsetLeft): Made a getter using __defineGetter__. | |
| (Element.prototype.totalOffsetTop): Ditto. | |
| 2011-11-28 Timothy Hatcher <timothy@apple.com> | |
| Update Web Inspector event observers to reflect changes in Inspector.json from Open Source as of r101194. | |
| Reviewed by Anders Carlsson. | |
| * UserInterface/DebuggerObserver.js: | |
| (WebInspector.DebuggerObserver.prototype.debuggerWasEnabled): Removed. | |
| (WebInspector.DebuggerObserver.prototype.debuggerWasDisabled): Removed. | |
| (WebInspector.DebuggerObserver.prototype.globalObjectCleared): Added. | |
| * UserInterface/InspectorObserver.js: | |
| (WebInspector.InspectorObserver.prototype.disconnectFromBackend): Removed. | |
| (WebInspector.InspectorObserver.prototype.disconnectFromWorker): Added. | |
| (WebInspector.InspectorObserver.prototype.bringToFront): Removed. | |
| (WebInspector.InspectorObserver.prototype.reset): Removed. | |
| (WebInspector.InspectorObserver.prototype.showPanel): Removed. | |
| (WebInspector.InspectorObserver.prototype.startUserInitiatedDebugging): Removed. | |
| * UserInterface/NetworkObserver.js: | |
| (WebInspector.NetworkObserver.prototype.responseReceived): Added frameId and loaderId arguments. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Fix copy and paste error that called InspectorBackend.registerConsoleDispatcher | |
| for all the other dispatchers. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): | |
| 2011-11-11 Timothy Hatcher <timothy@apple.com> | |
| Add the ResourceSidebarPanel class in the new Web Inspector. | |
| Part of: <rdar://problem/10318718> Implement the Resource sidebar for the new Web Inspector design | |
| Reviewed by Jessie Berlin. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Use ResourceSidebarPanel for the Resource panel. | |
| * UserInterface/ResourceSidebarPanel.js: Added. | |
| (WebInspector.ResourceSidebarPanel): | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ApplicationCacheObserver with stubs for events defined by the "ApplicationCache" domain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/ApplicationCacheObserver.js: Added. | |
| (WebInspector.ApplicationCacheObserver): | |
| (WebInspector.ApplicationCacheObserver.prototype.applicationCacheStatusUpdated): Not implemented. | |
| (WebInspector.ApplicationCacheObserver.prototype.networkStateUpdated): Not implemented. | |
| * UserInterface/Main.html: Include ApplicationCacheObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.ApplicationCacheObserver with InspectorBackend. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DOMStorageObserver with stubs for events defined by the "DOMStorage" domain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMStorageObserver.js: Added. | |
| (WebInspector.DOMStorageObserver): | |
| (WebInspector.DOMStorageObserver.prototype.addDOMStorage): Not implemented. | |
| (WebInspector.DOMStorageObserver.prototype.updateDOMStorage): Not implemented. | |
| * UserInterface/Main.html: Include DOMStorageObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.DOMStorageObserver with InspectorBackend. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DatabaseObserver with stubs for events defined by the "Database" domain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DatabaseObserver.js: Added. | |
| (WebInspector.DatabaseObserver): | |
| (WebInspector.DatabaseObserver.prototype.addDatabase): Not implemented. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionSucceeded): Not implemented. | |
| (WebInspector.DatabaseObserver.prototype.sqlTransactionFailed): Not implemented. | |
| * UserInterface/Main.html: Include DatabaseObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.DatabaseObserver with InspectorBackend. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DebuggerObserver with stubs for events defined by the "Debugger" domain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DebuggerObserver.js: Added. | |
| (WebInspector.DebuggerObserver): | |
| (WebInspector.DebuggerObserver.prototype.debuggerWasEnabled): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.debuggerWasDisabled): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.scriptParsed): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.scriptFailedToParse): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.breakpointResolved): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.paused): Not implemented. | |
| (WebInspector.DebuggerObserver.prototype.resumed): Not implemented. | |
| * UserInterface/Main.html: Include DebuggerObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.DebuggerObserver with InspectorBackend. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.DOMObserver with stubs for events defined by the "DOM" domain. | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/DOMObserver.js: Added. | |
| (WebInspector.DOMObserver): | |
| (WebInspector.DOMObserver.prototype.documentUpdated): Not implemented. | |
| (WebInspector.DOMObserver.prototype.setChildNodes): Not implemented. | |
| (WebInspector.DOMObserver.prototype.attributeModified): Not implemented. | |
| (WebInspector.DOMObserver.prototype.attributeRemoved): Not implemented. | |
| (WebInspector.DOMObserver.prototype.inlineStyleInvalidated): Not implemented. | |
| (WebInspector.DOMObserver.prototype.characterDataModified): Not implemented. | |
| (WebInspector.DOMObserver.prototype.childNodeCountUpdated): Not implemented. | |
| (WebInspector.DOMObserver.prototype.childNodeInserted): Not implemented. | |
| (WebInspector.DOMObserver.prototype.childNodeRemoved): Not implemented. | |
| * UserInterface/Main.html: Include DOMObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.DOMObserver with InspectorBackend. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.NetworkObserver with stubs for events defined by the "Network" domain. | |
| Reviewed by Sam Weinig. | |
| * UserInterface/Main.html: Include NetworkObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.NetworkObserver with InspectorBackend. | |
| * UserInterface/NetworkObserver.js: Added. | |
| (WebInspector.NetworkObserver): | |
| (WebInspector.NetworkObserver.prototype.requestWillBeSent): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.requestServedFromCache): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.responseReceived): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.dataReceived): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.loadingFinished): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.loadingFailed): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.requestServedFromMemoryCache): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.webSocketWillSendHandshakeRequest): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.webSocketHandshakeResponseReceived): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.webSocketCreated): Not implemented. | |
| (WebInspector.NetworkObserver.prototype.webSocketClosed): Not implemented. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.ConsoleObserver with stubs for events defined by the "Console" domain. | |
| Reviewed by Sam Weinig. | |
| * UserInterface/Main.html: Include ConsoleObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.ConsoleObserver with InspectorBackend. | |
| * UserInterface/ConsoleObserver.js: Added. | |
| (WebInspector.ConsoleObserver): | |
| (WebInspector.ConsoleObserver.prototype.messageAdded): Not implemented. | |
| (WebInspector.ConsoleObserver.prototype.messageRepeatCountUpdated): Not implemented. | |
| (WebInspector.ConsoleObserver.prototype.messagesCleared): Not implemented. | |
| 2011-11-14 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.PageObserver with stubs for events defined by the "Page" domain. | |
| Reviewed by Sam Weinig. | |
| * UserInterface/Main.html: Include PageObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Register an instance of WebInspector.PageObserver with InspectorBackend. | |
| * UserInterface/PageObserver.js: Added. | |
| (WebInspector.PageObserver): | |
| (WebInspector.PageObserver.prototype.domContentEventFired): Not implemented. | |
| (WebInspector.PageObserver.prototype.loadEventFired): Not implemented. | |
| (WebInspector.PageObserver.prototype.frameNavigated): Not implemented. | |
| (WebInspector.PageObserver.prototype.frameDetached): Not implemented. | |
| 2011-11-13 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.InspectorObserver to receive events defined by the "Inspector" domain. | |
| Most of the events are unimplemented stubs at this point. | |
| Reviewed by Sam Weinig. | |
| * UserInterface/InspectorObserver.js: Added. | |
| (WebInspector.InspectorObserver): | |
| (WebInspector.InspectorObserver.prototype.frontendReused): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.bringToFront): Call through to InspectorFrontendHost. | |
| (WebInspector.InspectorObserver.prototype.disconnectFromBackend): Ditto. | |
| (WebInspector.InspectorObserver.prototype.reset): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.showPanel): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.startUserInitiatedDebugging): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.evaluateForTestInFrontend): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.inspect): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.didCreateWorker): Not implemented. | |
| (WebInspector.InspectorObserver.prototype.didDestroyWorker): Not implemented. | |
| * UserInterface/Main.html: Include InspectorObserver.js. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Removed the load event listener and call InspectorFrontendHost.loaded | |
| here. Register an instance of WebInspector.InspectorObserver with InspectorBackend. | |
| 2011-11-13 Timothy Hatcher <timothy@apple.com> | |
| Include InspectorBackend.js and start accepting messages from the backend. | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.dispatchNextQueuedMessageFromBackend): Added. | |
| (WebInspector.dispatchMessageFromBackend): Added. | |
| 2011-11-11 Timothy Hatcher <timothy@apple.com> | |
| Copy InspectorBackendStub.js from WebCore so it can be used by the new Web Inspector. | |
| Reviewed by Joseph Pecoraro. | |
| * WebInspectorUI.xcodeproj/project.pbxproj: Add new Copy WebCore Inspector Resources build phase. | |
| * Configurations/Base.xcconfig: Add WEBCORE_RESOURCES_DIR. | |
| 2011-11-10 Timothy Hatcher <timothy@apple.com> | |
| Add WebInspector.FlexibleSpaceNavigationItem and make the navigation bar use flex box layout. | |
| This change will allow for controls that float to the right or left (like a close button when docked.) | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Add flexible spaces on each side. | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar): Use -webkit-box. | |
| (.navigation-bar > .item): Added. | |
| (.navigation-bar > .item.flexible-space): Added. | |
| (.navigation-bar > .item.button): Remove styles that aren't needed anymore. | |
| (.navigation-bar > .item.button > .glyph): Use auto margins to center the glyph since text-align no longer works. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype._calculateMinimumWidth): Skip flexible spaces. | |
| (WebInspector.FlexibleSpaceNavigationItem): Added. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar.prototype.get navigationBar): Added. | |
| 2011-11-10 Timothy Hatcher <timothy@apple.com> | |
| Rename WebInspector.NavigationItem to WebInspector.ButtonNavigationItem and make new | |
| WebInspector.RadioButtonNavigationItem and WebInspector.NavigationItem classes. | |
| This change allows for future non-radio-button items to be placed in a NavigationBar. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar > .item.button): | |
| (.navigation-bar.collapsed > .item.button): | |
| (.navigation-bar > .item.button > .glyph): | |
| (.navigation-bar > .item.button.selected): | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype._mouseDown): | |
| (WebInspector.NavigationBar.prototype._mouseMoved): | |
| (WebInspector.NavigationItem): | |
| (WebInspector.NavigationItem.prototype.get _classNames): | |
| (WebInspector.ButtonNavigationItem): | |
| (WebInspector.ButtonNavigationItem.prototype.generateStyleText): | |
| (WebInspector.ButtonNavigationItem.prototype._additionalClassNames.WebInspector.ButtonNavigationItem.StyleClassName._canvasIdentifier): | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages._imageLoaded): | |
| (WebInspector.ButtonNavigationItem.prototype._generateImages._createEmbossedCanvasImage): | |
| (WebInspector.RadioButtonNavigationItem): | |
| (WebInspector.RadioButtonNavigationItem.prototype.get selected): | |
| (WebInspector.RadioButtonNavigationItem.prototype.set selected): | |
| (WebInspector.RadioButtonNavigationItem.prototype.get active): | |
| (WebInspector.RadioButtonNavigationItem.prototype.set active): | |
| (WebInspector.RadioButtonNavigationItem.prototype.generateStyleText): | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.SidebarPanel): | |
| 2011-11-10 Timothy Hatcher <timothy@apple.com> | |
| Add support for resizing the sidebars in the new Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.css: | |
| (body): Prevent overflow. | |
| (#navigation-sidebar): Moved border and background properties to Sidebar.css. | |
| (#details-sidebar): Ditto. | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Specify the side for the sidebars. | |
| * UserInterface/Sidebar.css: | |
| (.sidebar.collapsed): Added. | |
| (.sidebar > .resizer): Added. | |
| (.sidebar.right > .resizer): Added. | |
| (.sidebar.left > .resizer): Added. | |
| (.sidebar.collapsed.right > .resizer): Added. | |
| (.sidebar.collapsed.left > .resizer): Added. | |
| (.sidebar.left): Added. | |
| (.sidebar.left:not(.collapsed) > .navigation-bar): Added. | |
| (body.window-inactive .sidebar.left > .navigation-bar): Added. | |
| (.sidebar.right): Added. | |
| (.sidebar.right:not(.collapsed) > .navigation-bar): Added. | |
| (body.window-inactive .sidebar.right > .navigation-bar): Added. | |
| * UserInterface/Sidebar.js: | |
| (WebInspector.Sidebar): Added the side argument. Setup the resizer element. | |
| (WebInspector.Sidebar.prototype.get minimumWidth): Added. | |
| (WebInspector.Sidebar.prototype.get maximumWidth): Added. | |
| (WebInspector.Sidebar.prototype.get width): Added. | |
| (WebInspector.Sidebar.prototype.set width): Added. | |
| (WebInspector.Sidebar.prototype.get collapsed): Added. | |
| (WebInspector.Sidebar.prototype.set collapsed): Added. | |
| (WebInspector.Sidebar.prototype.get side): Added. | |
| (WebInspector.Sidebar.prototype._resizerMouseDown): Added. | |
| (WebInspector.Sidebar.prototype._resizerMouseMoved): Added. | |
| (WebInspector.Sidebar.prototype._resizerMouseUp): Added. | |
| 2011-11-10 Timothy Hatcher <timothy@apple.com> | |
| Add minimumWidth and support for collapsing of the navigation bar items in the Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by John Sullivan and Joseph Pecoraro. | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar): Prevent overflow. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.addNavigationItem): Set _minimumWidthNeedsRecalculated to true. | |
| (WebInspector.NavigationBar.prototype.updateLayout): Added. | |
| (WebInspector.NavigationBar.prototype.get minimumWidth): Added. Call _calculateMinimumWidth if needed. | |
| (WebInspector.NavigationBar.prototype._calculateMinimumWidth): Added. | |
| 2011-11-09 Timothy Hatcher <timothy@apple.com> | |
| Use child CSS selectors for the NavigationBar in the new Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/NavigationBar.css: | |
| (.navigation-bar > .item): | |
| (.navigation-bar.collapsed > .item): | |
| (.navigation-bar > .item > .glyph): | |
| (.navigation-bar > .item.selected): | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationItem.prototype.generateStyleText): | |
| 2011-11-09 Timothy Hatcher <timothy@apple.com> | |
| Improve the window inactive appearance for the navigation bars and sidebars in the new Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Jon Honeycutt. | |
| * UserInterface/Main.css: | |
| (body.window-inactive #navigation-sidebar > .navigation-bar): Added. Set a grey background color. | |
| (#details-sidebar > .navigation-bar): Use a grey background color. | |
| (body.window-inactive #details-sidebar > .navigation-bar): Added. Set a grey background color. | |
| * UserInterface/NavigationBar.css: | |
| (body.window-inactive .navigation-bar): Use a grey background color. | |
| * UserInterface/Sidebar.css: | |
| (body.window-inactive .sidebar): Slight tweak to the grey color to match Xcode. | |
| 2011-11-09 Timothy Hatcher <timothy@apple.com> | |
| Layout the sidebars and basic structure of the new Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Main.css: | |
| (body): Use flex-box, position to fill the viewport. Disabled user select and drag. | |
| (#navigation-sidebar): Added. | |
| (#navigation-sidebar > .navigation-bar): Added. | |
| (#content): Added. | |
| (#content-panels): Added. | |
| (#quick-navigation-bar): Added. | |
| (#details-sidebar): Added. | |
| (#details-sidebar > .navigation-bar): Added. | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: | |
| (WebInspector.contentLoaded): Added. | |
| (WebInspector.windowLoaded): Added. | |
| 2011-11-08 Timothy Hatcher <timothy@apple.com> | |
| Add basic Sidebar support for the new Web Inspector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Brian Weinstein and Joseph Pecoraro. | |
| * UserInterface/Main.html: Include Sidebar.js and Sidebar.css. | |
| * UserInterface/Main.js: | |
| (windowLoaded): Change test code to use Sidebar classes. | |
| * UserInterface/Sidebar.css: Added. | |
| (.sidebar): | |
| (body.window-inactive .sidebar): | |
| (.sidebar > .navigation-bar): | |
| (.sidebar > .panel): | |
| (.sidebar > .panel.selected): | |
| * UserInterface/Sidebar.js: Added. | |
| (WebInspector.Sidebar): | |
| (WebInspector.Sidebar.prototype.addSidebarPanel): | |
| (WebInspector.Sidebar.prototype.get selectedSidebarPanel): | |
| (WebInspector.Sidebar.prototype.set selectedSidebarPanel): | |
| (WebInspector.Sidebar.prototype.get sidebarPanels): | |
| (WebInspector.Sidebar.prototype.get element): | |
| (WebInspector.Sidebar.prototype._navigationItemSelected): | |
| (WebInspector.SidebarPanel): | |
| (WebInspector.SidebarPanel.prototype.get identifier): | |
| (WebInspector.SidebarPanel.prototype.get navigationItem): | |
| (WebInspector.SidebarPanel.prototype.get element): | |
| (WebInspector.SidebarPanel.prototype.get selected): | |
| (WebInspector.SidebarPanel.prototype.set selected): | |
| 2011-11-08 Timothy Hatcher <timothy@apple.com> | |
| Fire an event when a navigation item is selected in a navigation bar. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Brian Weinstein. | |
| * UserInterface/NavigationBar.js: | |
| (WebInspector.NavigationBar.prototype.addNavigationItem): Remove unused arguments. (Drive by change.) | |
| (WebInspector.NavigationBar.prototype.set selectedNavigationItem): Avoid doing work if the item is already | |
| selected. Fire the event if the mouse isn't down. | |
| (WebInspector.NavigationBar.prototype._mouseDown): Store the previous selected item. | |
| (WebInspector.NavigationBar.prototype._mouseUp): Fire the event if the selected item is different. | |
| 2011-10-31 Timothy Hatcher <timothy@apple.com> | |
| Add the navigation bar for the new Web Insector. | |
| Part of: <rdar://problem/10318699> Implement the interface structure for the new Web Inspector design | |
| Reviewed by Joseph Pecoraro. | |
| * UserInterface/Images/NavigationItemBreakpoint.pdf: Added. | |
| * UserInterface/Images/NavigationItemFile.pdf: Added. | |
| * UserInterface/Images/NavigationItemLog.pdf: Added. | |
| * UserInterface/Images/NavigationItemMagnifyingGlass.pdf: Added. | |
| * UserInterface/Images/NavigationItemStopwatch.pdf: Added. | |
| * UserInterface/Images/NavigationItemStorage.pdf: Added. | |
| * UserInterface/Images/NavigationItemThreads.pdf: Added. | |
| * UserInterface/Images/NavigationItemWarning.pdf: Added. | |
| * UserInterface/Main.css: Added. | |
| (*): | |
| (body): | |
| * UserInterface/Main.html: | |
| * UserInterface/Main.js: Added. | |
| (windowLoaded): | |
| * UserInterface/NavigationBar.css: Added. | |
| (.navigation-bar): | |
| (body.window-inactive .navigation-bar): | |
| (.navigation-bar .item): | |
| (.navigation-bar.collapsed .item): | |
| (.navigation-bar .item .glyph): | |
| (.navigation-bar .item.selected): | |
| (.navigation-bar:focus): | |
| * UserInterface/NavigationBar.js: Added. | |
| (WebInspector.NavigationBar): | |
| (WebInspector.NavigationBar.prototype.addNavigationItem): | |
| (WebInspector.NavigationBar.prototype.get selectedNavigationItem): | |
| (WebInspector.NavigationBar.prototype.set selectedNavigationItem): | |
| (WebInspector.NavigationBar.prototype.get navigationItems): | |
| (WebInspector.NavigationBar.prototype.get element): | |
| (WebInspector.NavigationBar.prototype._mouseDown): | |
| (WebInspector.NavigationBar.prototype._mouseMoved): | |
| (WebInspector.NavigationBar.prototype._mouseUp): | |
| (WebInspector.NavigationBar.prototype._keyDown): | |
| (WebInspector.NavigationBar.prototype._focus): | |
| (WebInspector.NavigationBar.prototype._blur): | |
| (WebInspector.NavigationBar.prototype._updateStyle): | |
| (WebInspector.NavigationItem): | |
| (WebInspector.NavigationItem.prototype.get identifier): | |
| (WebInspector.NavigationItem.prototype.get displayName): | |
| (WebInspector.NavigationItem.prototype.get image): | |
| (WebInspector.NavigationItem.prototype.get element): | |
| (WebInspector.NavigationItem.prototype.get selected): | |
| (WebInspector.NavigationItem.prototype.set selected): | |
| (WebInspector.NavigationItem.prototype.get active): | |
| (WebInspector.NavigationItem.prototype.set active): | |
| (WebInspector.NavigationItem.prototype.generateStyleText): | |
| (WebInspector.NavigationItem.prototype.get _classNames): | |
| (WebInspector.NavigationItem.prototype._canvasIdenitfier): | |
| (WebInspector.NavigationItem.prototype._generateImages._imageLoaded): | |
| (WebInspector.NavigationItem.prototype._generateImages._createEmbossedCanvasImage): | |
| (WebInspector.NavigationItem.prototype._generateImages._drawImageShadow): | |
| (WebInspector.NavigationItem.prototype._generateImages._invertMaskImage): | |
| (WebInspector.NavigationItem.prototype._generateImages._applyImageMask): | |
| (WebInspector.NavigationItem.prototype._generateImages): | |
| * UserInterface/Object.js: Added. | |
| (WebInspector.Object): | |
| (WebInspector.Object.prototype.addEventListener): | |
| (WebInspector.Object.prototype.removeEventListener): | |
| (WebInspector.Object.prototype.removeAllListeners): | |
| (WebInspector.Object.prototype.hasEventListeners): | |
| (WebInspector.Object.prototype.dispatchEventToListeners): | |
| (WebInspector.Event): | |
| (WebInspector.Event.prototype.stopPropagation): | |
| (WebInspector.Event.prototype.preventDefault): | |
| * UserInterface/Utilities.js: Added. | |
| (Node.prototype.enclosingNodeOrSelfWithClass): | |
| (Node.prototype.enclosingNodeWithClass): | |
| (Element.prototype.totalOffsetLeft): | |
| (Element.prototype.totalOffsetTop): | |
| * UserInterface/WebInspector.js: Added. | |
| 2011-10-28 Timothy Hatcher <timothy@apple.com> | |
| Add a experiments menu item to enabled the new Web Inspector. There is only a placeholder | |
| for the new inspector right now, so it isn't useful for most people yet. | |
| This chnage depends on: https://webkit.org/b/71089 | |
| <rdar://problem/10318665> Make it possible to use a different front-end for the Web Inspector | |
| Reviewed by John Sullivan. | |
| * UserInterface/Main.html: Added. |