Changeset 125922 in webkit
- Timestamp:
- Aug 17, 2012 11:57:24 AM (12 years ago)
- Location:
- trunk
- Files:
-
- 19 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/inspector/profiler/heap-snapshot-inspect-dom-wrapper.html
r117234 r125922 14 14 function test() 15 15 { 16 WebInspector.showPanel("profiles"); 16 17 ProfilerAgent.takeHeapSnapshot(step0); 17 18 -
trunk/LayoutTests/inspector/profiler/heap-snapshot-loader.html
r124591 r125922 12 12 } 13 13 14 WebInspector.showPanel("profiles"); 14 15 var source = InspectorTest.createHeapSnapshotMockRaw(); 15 16 var sourceStringified = JSON.stringify(source); -
trunk/LayoutTests/inspector/profiler/heap-snapshot-summary-show-ranges.html
r116847 r125922 7 7 function test() 8 8 { 9 WebInspector.showPanel("profiles"); 10 9 11 var instanceCount = 50; 10 12 function createHeapSnapshot() -
trunk/LayoutTests/inspector/profiler/heap-snapshot-summary-shown-node-count-preserved-when-sorting.html
r114271 r125922 7 7 function test() 8 8 { 9 WebInspector.showPanel("profiles"); 10 9 11 var instanceCount = 25; 10 12 function createHeapSnapshot() -
trunk/Source/WebCore/ChangeLog
r125920 r125922 1 2012-08-17 Pavel Feldman <pfeldman@chromium.org> 2 3 Web Inspector: make profiles panel a lazily loaded module. 4 https://bugs.webkit.org/show_bug.cgi?id=94351 5 6 Reviewed by Yury Semikhatsky. 7 8 Moving files from .html to importScript. 9 10 * WebCore.gypi: 11 * inspector/front-end/CPUProfileView.js: 12 (WebInspector.CPUProfileHeader.prototype.createView): 13 * inspector/front-end/CSSSelectorProfileView.js: 14 (WebInspector.CSSSelectorProfileType.prototype.buttonClicked): 15 (WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile): 16 (WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile): 17 (WebInspector.CSSProfileHeader.prototype.createView): 18 * inspector/front-end/HeapSnapshotDataGrids.js: 19 (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.revealInDominatorsView): 20 (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu.else.revealInSummaryView): 21 (WebInspector.HeapSnapshotSortableDataGrid.prototype.populateContextMenu): 22 * inspector/front-end/HeapSnapshotView.js: 23 (WebInspector.HeapSnapshotView.prototype._profiles): 24 (WebInspector.HeapSnapshotView.prototype.populateContextMenu): 25 (WebInspector.HeapSnapshotProfileType.prototype.buttonClicked): 26 (WebInspector.HeapProfileHeader.prototype.createView): 27 * inspector/front-end/InspectorFrontendAPI.js: 28 (InspectorFrontendAPI.isProfilingJavaScript): 29 (InspectorFrontendAPI.startProfilingJavaScript): 30 (InspectorFrontendAPI.stopProfilingJavaScript): 31 * inspector/front-end/NativeMemorySnapshotView.js: 32 (WebInspector.NativeMemoryProfileHeader.prototype.createView): 33 * inspector/front-end/ProfilesPanel.js: 34 (WebInspector.ProfileType.prototype.buttonClicked): 35 (WebInspector.ProfileHeader.prototype.view): 36 (WebInspector.ProfileHeader.prototype.createView): 37 (WebInspector.ProfilesPanel.prototype.toggleRecordButton): 38 (WebInspector.ProfilesPanel.prototype.showProfileForURL): 39 (WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu.didReceiveHeapObjectId): 40 (WebInspector.RevealInHeapSnapshotContextMenuProvider.prototype.populateContextMenu): 41 (WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent): 42 (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect): 43 * inspector/front-end/externs.js: 44 * inspector/front-end/inspector.html: 45 * inspector/front-end/inspector.js: 46 (WebInspector._panelDescriptors): 47 (WebInspector._toggleSearchingForNode): 48 (WebInspector._profilesLinkifier): 49 (WebInspector._requestZoom.set InspectorFrontendHost): 50 (WebInspector._requestZoom): 51 (WebInspector.documentClick.followLink): 52 (WebInspector.documentClick): 53 1 54 2012-08-17 Dominic Mazzoni <dmazzoni@google.com> 2 55 -
trunk/Source/WebCore/WebCore.gypi
r125897 r125922 6256 6256 'inspector/front-end/AdvancedSearchController.js', 6257 6257 'inspector/front-end/ApplicationCacheModel.js', 6258 'inspector/front-end/BottomUpProfileDataGridTree.js',6259 6258 'inspector/front-end/BreakpointManager.js', 6260 6259 'inspector/front-end/BreakpointsSidebarPane.js', … … 6273 6272 'inspector/front-end/CookieParser.js', 6274 6273 'inspector/front-end/CookiesTable.js', 6275 'inspector/front-end/CPUProfileView.js',6276 6274 'inspector/front-end/CSSCompletions.js', 6277 6275 'inspector/front-end/CSSKeywordCompletions.js', 6278 'inspector/front-end/CSSSelectorProfileView.js',6279 6276 'inspector/front-end/CSSStyleModel.js', 6280 6277 'inspector/front-end/Database.js', … … 6307 6304 'inspector/front-end/HAREntry.js', 6308 6305 'inspector/front-end/HandlerRegistry.js', 6309 'inspector/front-end/HeapSnapshot.js',6310 'inspector/front-end/HeapSnapshotDataGrids.js',6311 'inspector/front-end/HeapSnapshotGridNodes.js',6312 'inspector/front-end/HeapSnapshotLoader.js',6313 'inspector/front-end/HeapSnapshotProxy.js',6314 'inspector/front-end/HeapSnapshotView.js',6315 6306 'inspector/front-end/HeapSnapshotWorker.js', 6316 'inspector/front-end/HeapSnapshotWorkerDispatcher.js',6317 6307 'inspector/front-end/HelpScreen.js', 6318 6308 'inspector/front-end/ImageView.js', … … 6330 6320 'inspector/front-end/KeyboardShortcut.js', 6331 6321 'inspector/front-end/Linkifier.js', 6332 'inspector/front-end/NativeMemorySnapshotView.js',6333 6322 'inspector/front-end/NavigatorOverlayController.js', 6334 6323 'inspector/front-end/NavigatorView.js', … … 6346 6335 'inspector/front-end/Popover.js', 6347 6336 'inspector/front-end/PresentationConsoleMessageHelper.js', 6348 'inspector/front-end/ProfileDataGridTree.js',6349 'inspector/front-end/ProfileLauncherView.js',6350 'inspector/front-end/ProfilesPanel.js',6351 6337 'inspector/front-end/ProgressBar.js', 6352 6338 'inspector/front-end/PropertiesSection.js', … … 6409 6395 'inspector/front-end/TimelineManager.js', 6410 6396 'inspector/front-end/Toolbar.js', 6411 'inspector/front-end/TopDownProfileDataGridTree.js',6412 6397 'inspector/front-end/treeoutline.js', 6413 6398 'inspector/front-end/UISourceCode.js', … … 6482 6467 'inspector/front-end/TimelinePanel.js', 6483 6468 ], 6469 6470 'webinspector_profiles_js_files': [ 6471 'inspector/front-end/BottomUpProfileDataGridTree.js', 6472 'inspector/front-end/CPUProfileView.js', 6473 'inspector/front-end/CSSSelectorProfileView.js', 6474 'inspector/front-end/HeapSnapshot.js', 6475 'inspector/front-end/HeapSnapshotDataGrids.js', 6476 'inspector/front-end/HeapSnapshotGridNodes.js', 6477 'inspector/front-end/HeapSnapshotLoader.js', 6478 'inspector/front-end/HeapSnapshotProxy.js', 6479 'inspector/front-end/HeapSnapshotView.js', 6480 'inspector/front-end/HeapSnapshotWorkerDispatcher.js', 6481 'inspector/front-end/NativeMemorySnapshotView.js', 6482 'inspector/front-end/ProfileDataGridTree.js', 6483 'inspector/front-end/ProfilesPanel.js', 6484 'inspector/front-end/ProfileLauncherView.js', 6485 'inspector/front-end/TopDownProfileDataGridTree.js', 6486 ], 6487 6484 6488 'webinspector_audits_js_files': [ 6485 6489 'inspector/front-end/AuditCategories.js', … … 6498 6502 'inspector/front-end/cm/xml.js', 6499 6503 ], 6504 6500 6505 'webinspector_modules_js_files': [ 6501 6506 '<@(webinspector_elements_js_files)', 6502 6507 '<@(webinspector_resources_js_files)', 6503 6508 '<@(webinspector_timeline_js_files)', 6509 '<@(webinspector_profiles_js_files)', 6504 6510 '<@(webinspector_audits_js_files)', 6505 6511 '<@(webinspector_codemirror_js_files)', -
trunk/Source/WebCore/inspector/front-end/CPUProfileView.js
r125863 r125922 651 651 /** 652 652 * @override 653 * @param {WebInspector.ProfilesPanel} profilesPanel 653 654 */ 654 createView: function( )655 createView: function(profilesPanel) 655 656 { 656 657 return new WebInspector.CPUProfileView(this); -
trunk/Source/WebCore/inspector/front-end/CSSSelectorProfileView.js
r118503 r125922 287 287 /** 288 288 * @override 289 * @param {WebInspector.ProfilesPanel} profilesPanel 289 290 * @return {boolean} 290 291 */ 291 buttonClicked: function( )292 buttonClicked: function(profilesPanel) 292 293 { 293 294 if (this._recording) { 294 this._stopRecordingProfile( );295 this._stopRecordingProfile(profilesPanel); 295 296 return false; 296 297 } else { 297 this._startRecordingProfile( );298 this._startRecordingProfile(profilesPanel); 298 299 return true; 299 300 } … … 320 321 }, 321 322 322 _startRecordingProfile: function() 323 /** 324 * @param {WebInspector.ProfilesPanel} profilesPanel 325 */ 326 _startRecordingProfile: function(profilesPanel) 323 327 { 324 328 this._recording = true; 325 329 CSSAgent.startSelectorProfiler(); 326 WebInspector.panels.profiles.setRecordingProfile(WebInspector.CSSSelectorProfileType.TypeId, true); 327 }, 328 329 _stopRecordingProfile: function() 330 profilesPanel.setRecordingProfile(WebInspector.CSSSelectorProfileType.TypeId, true); 331 }, 332 333 /** 334 * @param {WebInspector.ProfilesPanel} profilesPanel 335 */ 336 _stopRecordingProfile: function(profilesPanel) 330 337 { 331 338 /** … … 341 348 var title = WebInspector.UIString("Profile %d", uid) + String.sprintf(" (%s)", Number.secondsToString(profile.totalTime / 1000)); 342 349 var profileHeader = new WebInspector.CSSProfileHeader(this, title, uid, profile); 343 WebInspector.panels.profiles.addProfileHeader(profileHeader);344 WebInspector.panels.profiles.setRecordingProfile(WebInspector.CSSSelectorProfileType.TypeId, false);350 profilesPanel.addProfileHeader(profileHeader); 351 profilesPanel.setRecordingProfile(WebInspector.CSSSelectorProfileType.TypeId, false); 345 352 } 346 353 … … 389 396 /** 390 397 * @override 391 */ 392 createView: function() 398 * @param {WebInspector.ProfilesPanel} profilesPanel 399 */ 400 createView: function(profilesPanel) 393 401 { 394 402 var profile = /** @type {CSSAgent.SelectorProfile} */this._protocolData; -
trunk/Source/WebCore/inspector/front-end/HeapSnapshotDataGrids.js
r121240 r125922 98 98 99 99 /** 100 * @param {WebInspector.ProfilesPanel} profilesPanel 100 101 * @param {WebInspector.ContextMenu} contextMenu 101 */ 102 populateContextMenu: function(contextMenu, event) 102 * @param {Event} event 103 */ 104 populateContextMenu: function(profilesPanel, contextMenu, event) 103 105 { 104 106 var td = event.target.enclosingNodeOrSelfWithNodeName("td"); … … 109 111 function revealInDominatorsView() 110 112 { 111 WebInspector.panels.profiles.showObject(node.snapshotNodeId, "Dominators");113 profilesPanel.showObject(node.snapshotNodeId, "Dominators"); 112 114 } 113 115 contextMenu.appendItem(WebInspector.UIString("Reveal in Dominators View"), revealInDominatorsView.bind(this)); … … 115 117 function revealInSummaryView() 116 118 { 117 WebInspector.panels.profiles.showObject(node.snapshotNodeId, "Summary");119 profilesPanel.showObject(node.snapshotNodeId, "Summary"); 118 120 } 119 121 contextMenu.appendItem(WebInspector.UIString("Reveal in Summary View"), revealInSummaryView.bind(this)); -
trunk/Source/WebCore/inspector/front-end/HeapSnapshotView.js
r124591 r125922 32 32 * @constructor 33 33 * @extends {WebInspector.View} 34 * @param {WebInspector.ProfilesPanel} parent 34 35 */ 35 36 WebInspector.HeapSnapshotView = function(parent, profile) … … 408 409 _profiles: function() 409 410 { 410 return WebInspector.panels.profiles.getProfiles(WebInspector.HeapSnapshotProfileType.TypeId);411 return this.parent.getProfiles(WebInspector.HeapSnapshotProfileType.TypeId); 411 412 }, 412 413 … … 421 422 /** 422 423 * @param {WebInspector.ContextMenu} contextMenu 424 * @param {Event} event 423 425 */ 424 426 populateContextMenu: function(contextMenu, event) 425 427 { 426 this.dataGrid.populateContextMenu( contextMenu, event);428 this.dataGrid.populateContextMenu(this.parent, contextMenu, event); 427 429 }, 428 430 … … 721 723 WebInspector.HeapSnapshotView.prototype.__proto__ = WebInspector.View.prototype; 722 724 723 WebInspector.settings.showHeapSnapshotObjectsHiddenProperties = WebInspector.settings.createSetting("showHeaSnapshotObjectsHiddenProperties", false);724 725 725 /** 726 726 * @constructor … … 742 742 /** 743 743 * @override 744 * @param {WebInspector.ProfilesPanel} profilesPanel 744 745 * @return {boolean} 745 746 */ 746 buttonClicked: function( )747 { 748 WebInspector.panels.profiles.takeHeapSnapshot();747 buttonClicked: function(profilesPanel) 748 { 749 profilesPanel.takeHeapSnapshot(); 749 750 return false; 750 751 }, … … 847 848 /** 848 849 * @override 849 */ 850 createView: function() 851 { 852 return new WebInspector.HeapSnapshotView(WebInspector.panels.profiles, this); 850 * @param {WebInspector.ProfilesPanel} profilesPanel 851 */ 852 createView: function(profilesPanel) 853 { 854 return new WebInspector.HeapSnapshotView(profilesPanel, this); 853 855 }, 854 856 -
trunk/Source/WebCore/inspector/front-end/InspectorFrontendAPI.js
r125871 r125922 58 58 isProfilingJavaScript: function() 59 59 { 60 return WebInspector. CPUProfileType.instance && WebInspector.CPUProfileType.instance.isRecordingProfile();60 return WebInspector.panels.profiles && WebInspector.CPUProfileType.instance && WebInspector.CPUProfileType.instance.isRecordingProfile(); 61 61 }, 62 62 63 63 startProfilingJavaScript: function() 64 64 { 65 WebInspector.panels.profiles.enableProfiler(); 66 WebInspector.inspectorView.setCurrentPanel(WebInspector.panels.profiles); 65 WebInspector.showPanel("profiles").enableProfiler(); 67 66 if (WebInspector.CPUProfileType.instance) 68 67 WebInspector.CPUProfileType.instance.startRecordingProfile(); … … 71 70 stopProfilingJavaScript: function() 72 71 { 72 WebInspector.showPanel("profiles"); 73 73 if (WebInspector.CPUProfileType.instance) 74 74 WebInspector.CPUProfileType.instance.stopRecordingProfile(); 75 WebInspector.inspectorView.setCurrentPanel(WebInspector.panels.profiles);76 75 }, 77 76 -
trunk/Source/WebCore/inspector/front-end/NativeMemorySnapshotView.js
r124332 r125922 83 83 /** 84 84 * @override 85 * @param {WebInspector.ProfilesPanel} profilesPanel 85 86 * @return {boolean} 86 87 */ 87 buttonClicked: function() 88 { 89 var profilesPanel = WebInspector.panels.profiles; 88 buttonClicked: function(profilesPanel) 89 { 90 90 var profileHeader = new WebInspector.NativeMemoryProfileHeader(this, WebInspector.UIString("Snapshot %d", this._nextProfileUid), this._nextProfileUid); 91 91 ++this._nextProfileUid; … … 179 179 /** 180 180 * @override 181 */ 182 createView: function() 181 * @param {WebInspector.ProfilesPanel} profilesPanel 182 */ 183 createView: function(profilesPanel) 183 184 { 184 185 return new WebInspector.NativeMemorySnapshotView(this); -
trunk/Source/WebCore/inspector/front-end/ProfilesPanel.js
r125871 r125922 39 39 } 40 40 41 WebInspector.ProfileType.URLRegExp = /webkit-profile:\/\/(.+)\/(.+)#([0-9]+)/;42 43 41 WebInspector.ProfileType.prototype = { 44 42 get buttonTooltip() … … 63 61 64 62 /** 63 * @param {WebInspector.ProfilesPanel} profilesPanel 65 64 * @return {boolean} 66 65 */ 67 buttonClicked: function( )66 buttonClicked: function(profilesPanel) 68 67 { 69 68 return false; … … 98 97 } 99 98 } 100 101 WebInspector.registerLinkifierPlugin(function(title)102 {103 var profileStringMatches = WebInspector.ProfileType.URLRegExp.exec(title);104 if (profileStringMatches)105 title = WebInspector.panels.profiles.displayTitleForProfileLink(profileStringMatches[2], profileStringMatches[1]);106 return title;107 });108 99 109 100 /** … … 150 141 { 151 142 if (!this._view) 152 this._view = this.createView( );143 this._view = this.createView(WebInspector.ProfilesPanel._instance); 153 144 return this._view; 154 145 }, 155 146 156 createView: function() 147 /** 148 * @param {WebInspector.ProfilesPanel} profilesPanel 149 */ 150 createView: function(profilesPanel) 157 151 { 158 152 throw new Error("Not implemented."); … … 194 188 { 195 189 WebInspector.Panel.call(this, "profiles"); 190 WebInspector.ProfilesPanel._instance = this; 196 191 this.registerRequiredCSS("panelEnablerView.css"); 197 192 this.registerRequiredCSS("heapProfiler.css"); … … 302 297 toggleRecordButton: function() 303 298 { 304 var isProfiling = this._selectedProfileType.buttonClicked( );299 var isProfiling = this._selectedProfileType.buttonClicked(this); 305 300 this.recordButton.toggled = isProfiling; 306 301 this.recordButton.title = this._selectedProfileType.buttonTooltip; … … 701 696 showProfileForURL: function(url) 702 697 { 703 var match = url.match(WebInspector.Profile Type.URLRegExp);698 var match = url.match(WebInspector.ProfileURLRegExp); 704 699 if (!match) 705 700 return; … … 1105 1100 populateContextMenu: function(section, contextMenu) 1106 1101 { 1107 if (WebInspector.inspectorView.currentPanel() !== WebInspector. panels.profiles)1102 if (WebInspector.inspectorView.currentPanel() !== WebInspector.ProfilesPanel._instance) 1108 1103 return; 1109 1104 … … 1112 1107 return; 1113 1108 1114 var heapProfiles = WebInspector. panels.profiles.getProfiles(WebInspector.HeapSnapshotProfileType.TypeId);1109 var heapProfiles = WebInspector.ProfilesPanel._instance.getProfiles(WebInspector.HeapSnapshotProfileType.TypeId); 1115 1110 if (!heapProfiles.length) 1116 1111 return; … … 1123 1118 function didReceiveHeapObjectId(viewName, error, result) 1124 1119 { 1125 if (WebInspector.inspectorView.currentPanel() !== WebInspector. panels.profiles)1120 if (WebInspector.inspectorView.currentPanel() !== WebInspector.ProfilesPanel._instance) 1126 1121 return; 1127 1122 if (!error) 1128 WebInspector. panels.profiles.showObject(result, viewName);1123 WebInspector.ProfilesPanel._instance.showObject(result, viewName); 1129 1124 } 1130 1125 … … 1266 1261 if (profile.canSaveToFile()) 1267 1262 contextMenu.appendItem(WebInspector.UIString("Save profile\u2026"), profile.saveToFile.bind(profile)); 1268 contextMenu.appendItem(WebInspector.UIString("Load profile\u2026"), WebInspector.panels.profiles._fileSelectorElement.click.bind(WebInspector.panels.profiles._fileSelectorElement)); 1263 // FIXME: use context menu provider 1264 var profilesPanel = WebInspector.ProfilesPanel._instance; 1265 contextMenu.appendItem(WebInspector.UIString("Load profile\u2026"), profilesPanel._fileSelectorElement.click.bind(profilesPanel._fileSelectorElement)); 1269 1266 contextMenu.appendItem(WebInspector.UIString("Delete profile"), this.ondelete.bind(this)); 1270 1267 contextMenu.show(event); … … 1289 1286 { 1290 1287 if (this.children.length > 0) 1291 WebInspector. panels.profiles.showProfile(this.children[this.children.length - 1].profile);1288 WebInspector.ProfilesPanel._instance.showProfile(this.children[this.children.length - 1].profile); 1292 1289 } 1293 1290 } … … 1320 1317 1321 1318 WebInspector.ProfilesSidebarTreeElement.prototype.__proto__ = WebInspector.SidebarTreeElement.prototype; 1319 1320 importScript("ProfileDataGridTree.js"); 1321 importScript("BottomUpProfileDataGridTree.js"); 1322 importScript("CPUProfileView.js"); 1323 importScript("CSSSelectorProfileView.js"); 1324 importScript("HeapSnapshot.js"); 1325 importScript("HeapSnapshotDataGrids.js"); 1326 importScript("HeapSnapshotGridNodes.js"); 1327 importScript("HeapSnapshotLoader.js"); 1328 importScript("HeapSnapshotProxy.js"); 1329 importScript("HeapSnapshotView.js"); 1330 importScript("HeapSnapshotWorkerDispatcher.js"); 1331 importScript("NativeMemorySnapshotView.js"); 1332 importScript("ProfileLauncherView.js"); 1333 importScript("TopDownProfileDataGridTree.js"); -
trunk/Source/WebCore/inspector/front-end/Settings.js
r125201 r125922 43 43 exposeDisableCache: false, 44 44 applicationTitle: "Web Inspector - %s", 45 showHeapSnapshotObjectsHiddenProperties: false,46 45 showDockToRight: false, 47 46 exposeFileSystemInspection: false … … 102 101 this.geolocationOverride = this.createSetting("geolocationOverride", ""); 103 102 this.deviceOrientationOverride = this.createSetting("deviceOrientationOverride", ""); 103 this.showHeapSnapshotObjectsHiddenProperties = this.createSetting("showHeaSnapshotObjectsHiddenProperties", false); 104 104 105 105 // If there are too many breakpoints in a storage, it is likely due to a recent bug that caused -
trunk/Source/WebCore/inspector/front-end/externs.js
r125863 r125922 247 247 /** @constructor */ 248 248 WebInspector.CodeMirrorTextEditor = function(url, delegate) { } 249 250 WebInspector.ProfileURLRegExp = ""; -
trunk/Source/WebCore/inspector/front-end/inspector.html
r125897 r125922 122 122 <script type="text/javascript" src="RevisionHistoryView.js"></script> 123 123 <script type="text/javascript" src="ScriptsNavigator.js"></script> 124 <script type="text/javascript" src="ProfilesPanel.js"></script>125 124 <script type="text/javascript" src="ConsolePanel.js"></script> 126 125 <script type="text/javascript" src="ExtensionAPI.js"></script> … … 151 150 <script type="text/javascript" src="FontView.js"></script> 152 151 <script type="text/javascript" src="ImageView.js"></script> 153 <script type="text/javascript" src="ProfileLauncherView.js"></script>154 <script type="text/javascript" src="ProfileDataGridTree.js"></script>155 <script type="text/javascript" src="BottomUpProfileDataGridTree.js"></script>156 <script type="text/javascript" src="TopDownProfileDataGridTree.js"></script>157 <script type="text/javascript" src="CPUProfileView.js"></script>158 <script type="text/javascript" src="CSSSelectorProfileView.js"></script>159 <script type="text/javascript" src="HeapSnapshot.js"></script>160 <script type="text/javascript" src="HeapSnapshotProxy.js"></script>161 <script type="text/javascript" src="HeapSnapshotWorkerDispatcher.js"></script>162 <script type="text/javascript" src="HeapSnapshotGridNodes.js"></script>163 <script type="text/javascript" src="HeapSnapshotLoader.js"></script>164 <script type="text/javascript" src="HeapSnapshotDataGrids.js"></script>165 <script type="text/javascript" src="HeapSnapshotView.js"></script>166 <script type="text/javascript" src="NativeMemorySnapshotView.js"></script>167 152 <script type="text/javascript" src="DebuggerModel.js"></script> 168 153 <script type="text/javascript" src="SourceMapping.js"></script> -
trunk/Source/WebCore/inspector/front-end/inspector.js
r125897 r125922 43 43 var scripts = new WebInspector.PanelDescriptor("scripts", WebInspector.UIString("Sources"), undefined, undefined, new WebInspector.ScriptsPanel()); 44 44 var timeline = new WebInspector.PanelDescriptor("timeline", WebInspector.UIString("Timeline"), "TimelinePanel", "TimelinePanel.js"); 45 var profiles = new WebInspector.PanelDescriptor("profiles", WebInspector.UIString("Profiles"), undefined, undefined, new WebInspector.ProfilesPanel());45 var profiles = new WebInspector.PanelDescriptor("profiles", WebInspector.UIString("Profiles"), "ProfilesPanel", "ProfilesPanel.js"); 46 46 var audits = new WebInspector.PanelDescriptor("audits", WebInspector.UIString("Audits"), "AuditsPanel", "AuditsPanel.js"); 47 47 var console = new WebInspector.PanelDescriptor("console", WebInspector.UIString("Console"), "ConsolePanel"); … … 385 385 } 386 386 WebInspector.domAgent.setInspectModeEnabled(enabled, callback.bind(this)); 387 }, 388 389 _profilesLinkifier: function(title) 390 { 391 var profileStringMatches = WebInspector.ProfileURLRegExp.exec(title); 392 if (profileStringMatches) { 393 var profilesPanel = /** @ type {WebInspector.ProfilesPanel} */ WebInspector.panel("profiles"); 394 title = WebInspector.ProfilesPanel._instance.displayTitleForProfileLink(profileStringMatches[2], profileStringMatches[1]); 395 } 396 return title; 387 397 } 388 398 } … … 528 538 529 539 this.addMainEventListeners(document); 540 WebInspector.registerLinkifierPlugin(this._profilesLinkifier.bind(this)); 530 541 531 542 window.addEventListener("resize", this.windowResize.bind(this), true); … … 672 683 return; 673 684 674 const profileMatch = WebInspector.Profile Type.URLRegExp.exec(anchor.href);685 const profileMatch = WebInspector.ProfileURLRegExp.exec(anchor.href); 675 686 if (profileMatch) { 676 687 WebInspector.showProfileForURL(anchor.href); … … 1077 1088 this.resourceTreeModel.frontendReused(); 1078 1089 } 1090 1091 WebInspector.ProfileURLRegExp = /webkit-profile:\/\/(.+)\/(.+)#([0-9]+)/; -
trunk/Source/WebKit/chromium/ChangeLog
r125909 r125922 1 2012-08-17 Pavel Feldman <pfeldman@chromium.org> 2 3 Web Inspector: make profiles panel a lazily loaded module. 4 https://bugs.webkit.org/show_bug.cgi?id=94351 5 6 Reviewed by Yury Semikhatsky. 7 8 * WebKit.gyp: 9 1 10 2012-08-17 Keishi Hattori <keishi@webkit.org> 2 11 -
trunk/Source/WebKit/chromium/WebKit.gyp
r125897 r125922 877 877 'concatenated_devtools_resources_js', 878 878 'concatenated_devtools_timeline_js', 879 'concatenated_devtools_profiles_js', 879 880 'concatenated_devtools_audits_js', 880 881 'concatenated_devtools_codemirror_js', … … 962 963 'concatenated_devtools_resources_js', 963 964 'concatenated_devtools_timeline_js', 965 'concatenated_devtools_profiles_js', 964 966 'concatenated_devtools_audits_js', 965 967 'concatenated_devtools_codemirror_js', … … 983 985 '<(PRODUCT_DIR)/resources/inspector/ResourcesPanel.js', 984 986 '<(PRODUCT_DIR)/resources/inspector/TimelinePanel.js', 987 '<(PRODUCT_DIR)/resources/inspector/ProfilesPanel.js', 985 988 '<(PRODUCT_DIR)/resources/inspector/AuditsPanel.js', 986 989 '<(PRODUCT_DIR)/resources/inspector/CodeMirrorTextEditor.js', … … 1154 1157 }, 1155 1158 { 1159 'target_name': 'concatenated_devtools_profiles_js', 1160 'type': 'none', 1161 'actions': [{ 1162 'action_name': 'concatenate_devtools_profiles_js', 1163 'script_name': 'scripts/inline_js_imports.py', 1164 'input_file': '../../WebCore/inspector/front-end/ProfilesPanel.js', 1165 'inputs': [ 1166 '<@(_script_name)', 1167 '<@(webinspector_profiles_js_files)', 1168 ], 1169 'search_path': '../../WebCore/inspector/front-end', 1170 'outputs': ['<(PRODUCT_DIR)/resources/inspector/ProfilesPanel.js'], 1171 'action': ['python', '<@(_script_name)', '<@(_input_file)', '<@(_search_path)', '<@(_outputs)'], 1172 }], 1173 }, 1174 { 1156 1175 'target_name': 'concatenated_devtools_audits_js', 1157 1176 'type': 'none',
Note: See TracChangeset
for help on using the changeset viewer.