diff options
author | Steve Block <steveblock@google.com> | 2011-06-08 08:26:01 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-06-08 08:26:01 -0700 |
commit | 3742ac093d35d923c81693096ab6671e9b147700 (patch) | |
tree | c2add9100f789dad45ef1ec5328bddde02c47a4c /Source/WebCore/inspector/front-end/NetworkPanel.js | |
parent | 901401d90459bc22580842455d4588b9a697514d (diff) | |
parent | e5926f4a0d6adc9ad4a75824129f117181953560 (diff) | |
download | external_webkit-3742ac093d35d923c81693096ab6671e9b147700.zip external_webkit-3742ac093d35d923c81693096ab6671e9b147700.tar.gz external_webkit-3742ac093d35d923c81693096ab6671e9b147700.tar.bz2 |
Merge changes I55c6d71a,Ifb3277d4,Ia1b847a2,I7ba9cf3f,Ida2b2a8a,I1280ec90,I72f818d5,I2e3b588b,I9a4e6289,Ia724c78b,Icd8612c8,Ie31b15d7,Ie125edae,I77941a88,I89dae78b,I3516e5ca,I1a4c17b5,I2c4ecc1a,I9c8e6537,Ifac13115,Ie1f80e09,Ia541ed77,I60ce9d78
* changes:
Merge WebKit at r82507: Update ThirdPartyProject.prop
Merge WebKit at r82507: Cherry-pick change r88166 to add INSPECTOR guards to ScriptProfiler
Merge WebKit at r82507: Work around a V8 bug
Merge WebKit at r82507: JNIType renamed to JavaType
Merge WebKit at r82507: IconDatabaseClient interface expanded
Merge WebKit at r82507: Don't use new loss-free code path in HTMLCanvasElement::toDataURL()
Merge WebKit at r82507: IcondDatabaseBase::iconForPageURL() renamed
Merge WebKit at r82507: IconDatabaseBase::Open() signature changed
Merge WebKit at r82507: Node::isContentEditable() renamed
Merge WebKit at r82507: Use icon database through IconDatabaseBase
Merge WebKit at r82507: toInputElement() is now a member of Node
Merge WebKit at r82507: FrameLoaderClient::objectContentType() signature changed
Merge WebKit at r82507: StringImpl::computeHash() removed
Merge WebKit at r82507: Stub out FontPlatformData::setOrientation()
Merge WebKit at r82507: Path::strokeBoundingRect() is now const
Merge WebKit at r82507: Add missing UnusedParam.h include in ApplicationCacheGroup.cpp
Merge WebKit at r82507: Continue to use Android's version of FontPlatformData.h
Merge WebKit at r82507: Update signature of FontCustomPlatformData::fontPlatformData()
Merge WebKit at r82507: Fix conflicts due to JNI refactoring
Merge WebKit at r82507: Fix conflicts due to new StorageTracker
Merge WebKit at r82507: Fix conflicts
Merge WebKit at r82507: Fix makefiles
Merge WebKit at r82507: Initial merge by git
Diffstat (limited to 'Source/WebCore/inspector/front-end/NetworkPanel.js')
-rw-r--r-- | Source/WebCore/inspector/front-end/NetworkPanel.js | 50 |
1 files changed, 34 insertions, 16 deletions
diff --git a/Source/WebCore/inspector/front-end/NetworkPanel.js b/Source/WebCore/inspector/front-end/NetworkPanel.js index 06983f0..3c497d6 100644 --- a/Source/WebCore/inspector/front-end/NetworkPanel.js +++ b/Source/WebCore/inspector/front-end/NetworkPanel.js @@ -40,6 +40,7 @@ WebInspector.NetworkPanel = function() this._resourcesByURL = {}; this._staleResources = []; this._resourceGridNodes = {}; + this._lastResourceGridNodeId = 0; this._mainResourceLoadTime = -1; this._mainResourceDOMContentTime = -1; this._hiddenCategories = {}; @@ -82,7 +83,7 @@ WebInspector.NetworkPanel = function() WebInspector.networkManager.addEventListener(WebInspector.NetworkManager.EventTypes.ResourceStarted, this._onResourceStarted, this); WebInspector.networkManager.addEventListener(WebInspector.NetworkManager.EventTypes.ResourceUpdated, this._onResourceUpdated, this); WebInspector.networkManager.addEventListener(WebInspector.NetworkManager.EventTypes.ResourceFinished, this._onResourceUpdated, this); - WebInspector.networkManager.addEventListener(WebInspector.NetworkManager.EventTypes.MainResourceCommitLoad, this._onMainResourceCommitLoad, this); + WebInspector.networkManager.addEventListener(WebInspector.NetworkManager.EventTypes.FrameCommittedLoad, this._onFrameCommitLoad, this); } WebInspector.NetworkPanel.prototype = { @@ -367,7 +368,7 @@ WebInspector.NetworkPanel.prototype = { for (var i = 0; i < this._resources.length; ++i) { var resource = this._resources[i]; transferSize += (resource.cached || !resource.transferSize) ? 0 : resource.transferSize; - if (resource.isMainResource) + if (resource === WebInspector.mainResource) baseTime = resource.startTime; if (resource.endTime > maxTime) maxTime = resource.endTime; @@ -564,7 +565,15 @@ WebInspector.NetworkPanel.prototype = { _resourceGridNode: function(resource) { - return this._resourceGridNodes[resource.identifier]; + return this._resourceGridNodes[resource.__gridNodeId]; + }, + + _createResourceGridNode: function(resource) + { + var node = new WebInspector.NetworkDataGridNode(this, resource); + resource.__gridNodeId = this._lastResourceGridNodeId++; + this._resourceGridNodes[resource.__gridNodeId] = node; + return node; }, revealAndSelectItem: function(resource) @@ -671,8 +680,7 @@ WebInspector.NetworkPanel.prototype = { var node = this._resourceGridNode(resource); if (!node) { // Create the timeline tree element and graph. - node = new WebInspector.NetworkDataGridNode(this, resource); - this._resourceGridNodes[resource.identifier] = node; + node = this._createResourceGridNode(resource); this._dataGrid.appendChild(node); } node.refreshResource(); @@ -794,15 +802,29 @@ WebInspector.NetworkPanel.prototype = { this._reset(); }, - _onMainResourceCommitLoad: function() + _onFrameCommitLoad: function(event) { + if (event.data.frame.parentId) + return; + + // Main frame committed load. if (this._preserveLogToggle.toggled) return; + // Preserve provisional load resources. + var loaderId = event.data.loaderId; + var resourcesToPreserve = []; + for (var i = 0; i < this._resources.length; ++i) { + var resource = this._resources[i]; + if (resource.loaderId === loaderId) + resourcesToPreserve.push(resource); + } + this._reset(); - // Now resurrect the main resource along with all redirects that lead to it. - var resourcesToAppend = (WebInspector.mainResource.redirects || []).concat(WebInspector.mainResource); - resourcesToAppend.forEach(this._appendResource, this); + + // Restore preserved items. + for (var i = 0; i < resourcesToPreserve.length; ++i) + this._appendResource(resourcesToPreserve[i]); }, canShowSourceLine: function(url, line) @@ -972,16 +994,12 @@ WebInspector.NetworkPanel.prototype = { _contextMenu: function(event) { - // createBlobURL is enabled conditionally, do not expose resource export if it's not available. - if ((window.webkitURL && typeof window.webkitURL.createObjectURL !== "function") || !Preferences.resourceExportEnabled) - return; - var contextMenu = new WebInspector.ContextMenu(); var gridNode = this._dataGrid.dataGridNodeFromNode(event.target); var resource = gridNode && gridNode._resource; if (resource) - contextMenu.appendItem(WebInspector.UIString("Export to HAR"), this._exportResource.bind(this, resource)); - contextMenu.appendItem(WebInspector.UIString("Export all to HAR"), this._exportAll.bind(this)); + contextMenu.appendItem(WebInspector.UIString("Copy entry as HAR"), this._exportResource.bind(this, resource)); + contextMenu.appendItem(WebInspector.UIString("Copy network log as HAR"), this._exportAll.bind(this)); contextMenu.show(event); }, @@ -1359,7 +1377,7 @@ WebInspector.NetworkDataGridNode.prototype = { _openInNewTab: function() { - InspectorAgent.openInInspectedWindow(this._resource.url); + PageAgent.openInInspectedWindow(this._resource.url); }, get selectable() |