[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

pfeldman at chromium.org pfeldman at chromium.org
Wed Dec 22 15:08:11 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 8050a9db7e95b840dbaef17eb7a7323b06d3b769
Author: pfeldman at chromium.org <pfeldman at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Oct 28 10:22:51 2010 +0000

    2010-10-27  Pavel Feldman  <pfeldman at chromium.org>
    
            Reviewed by Timothy Hatcher.
    
            Web Inspector: make debugger work against new resource manager.
            https://bugs.webkit.org/show_bug.cgi?id=48376
    
            * inspector/Inspector.idl:
            * inspector/InspectorController.cpp:
            (WebCore::InspectorController::identifierForInitialRequest):
            * inspector/InspectorResourceAgent.cpp:
            (WebCore::InspectorResourceAgent::identifierForInitialRequest):
            * inspector/InspectorResourceAgent.h:
            * inspector/front-end/ExtensionServer.js:
            (WebInspector.ExtensionServer.prototype._onGetResourceContent):
            * inspector/front-end/Resource.js:
            (WebInspector.Resource.prototype.set content):
            * inspector/front-end/ResourceManager.js:
            (WebInspector.ResourceManager):
            (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
            (WebInspector.ResourceManager.prototype._createResource):
            (WebInspector.ResourceManager.prototype.willSendRequest):
            (WebInspector.ResourceManager.prototype._updateResourceWithRequest):
            (WebInspector.ResourceManager.prototype.didFinishLoading):
            (WebInspector.ResourceManager.prototype.didFailLoading):
            (WebInspector.ResourceManager.prototype.setOverrideContent):
            (WebInspector.ResourceManager.prototype._processCachedResources):
            (WebInspector.ResourceManager.prototype._addFramesRecursively):
            (WebInspector.ResourceManager.prototype.resourceForURL):
            (WebInspector.ResourceManager.prototype.addConsoleMessage):
            (WebInspector.ResourceManager.prototype.clearConsoleMessages):
            (WebInspector.ResourceManager.prototype.forAllResources):
            (WebInspector.ResourceManager.prototype._bindResourceURL):
            (WebInspector.ResourceManager.prototype._unbindResourceURL):
            (WebInspector.ResourceManager.getContent):
            (WebInspector.ResourceTreeModel):
            (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
            (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
            (WebInspector.ResourceTreeModel.prototype._clearResources):
            * inspector/front-end/StoragePanel.js:
            (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
            * inspector/front-end/networkPanel.css:
            (.network.panel .resources-dividers):
    
    2010-10-27  Pavel Feldman  <pfeldman at chromium.org>
    
            Reviewed by Timothy Hatcher.
    
            Web Inspector: make debugger work against new resource manager.
            https://bugs.webkit.org/show_bug.cgi?id=48376
    
            * http/tests/inspector/inspector-test2.js:
            (initialize_InspectorTest.InspectorTest.reloadPageIfNeeded):
            (initialize_InspectorTest.InspectorTest.pageReloaded):
            * http/tests/inspector/resource-har-conversion.html:
            * http/tests/inspector/resource-parameters.html:
            * inspector/extensions-resources.html:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70762 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index b7a240d..9aee497 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,17 @@
+2010-10-27  Pavel Feldman  <pfeldman at chromium.org>
+
+        Reviewed by Timothy Hatcher.
+
+        Web Inspector: make debugger work against new resource manager.
+        https://bugs.webkit.org/show_bug.cgi?id=48376
+
+        * http/tests/inspector/inspector-test2.js:
+        (initialize_InspectorTest.InspectorTest.reloadPageIfNeeded):
+        (initialize_InspectorTest.InspectorTest.pageReloaded):
+        * http/tests/inspector/resource-har-conversion.html:
+        * http/tests/inspector/resource-parameters.html:
+        * inspector/extensions-resources.html:
+
 2010-10-28  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Alexey Proskuryakov.
diff --git a/LayoutTests/http/tests/inspector/inspector-test2.js b/LayoutTests/http/tests/inspector/inspector-test2.js
index 5a982e1..27294b2 100644
--- a/LayoutTests/http/tests/inspector/inspector-test2.js
+++ b/LayoutTests/http/tests/inspector/inspector-test2.js
@@ -84,15 +84,15 @@ InspectorTest.reloadPage = function(callback)
 
 InspectorTest.reloadPageIfNeeded = function(callback)
 {
-    if (!InspectorTest._pageWasReloaded)
+    if (!InspectorTest._pageWasReloaded) {
+        InspectorTest._pageWasReloaded = true;
         InspectorTest.reloadPage(callback);
-    else
+    } else
         callback();
 }
 
 InspectorTest.pageReloaded = function()
 {
-    InspectorTest._pageWasReloaded = true;
     resultsSynchronized = false;
     InspectorTest.addResult("Page reloaded.");
     if (InspectorTest._reloadPageCallback) {
diff --git a/LayoutTests/http/tests/inspector/resource-har-conversion.html b/LayoutTests/http/tests/inspector/resource-har-conversion.html
index 0593834..2229e56 100644
--- a/LayoutTests/http/tests/inspector/resource-har-conversion.html
+++ b/LayoutTests/http/tests/inspector/resource-har-conversion.html
@@ -9,7 +9,7 @@ var test = function()
 {
     function getHAR(id)
     {
-        return new WebInspector.HAREntry(WebInspector.resources[id]).build();
+        return new WebInspector.HAREntry(WebInspector.networkResources[id]).build();
     }
 
     function addCookieHeadersToResource(resource)
@@ -24,16 +24,16 @@ var test = function()
 
     function findResourceByURL(url)
     {
-        for (var resource in WebInspector.resources) {
-            if (url.test(WebInspector.resources[resource].url))
-                return WebInspector.resources[resource];
+        for (var id in WebInspector.networkResources) {
+            if (url.test(WebInspector.networkResources[id].url))
+                return WebInspector.networkResources[id];
         }
     }
 
     InspectorTest.enableResourceTracking(function() {
         InjectedScriptAccess.getDefault().evaluate("doXHR()", "console", function() {
             addCookieHeadersToResource(findResourceByURL(/inspector-test2\.js$/));
-            var resources = Object.keys(WebInspector.resources).map(getHAR).sort(InspectorTest.resourceURLComparer);
+            var resources = Object.keys(WebInspector.networkResources).map(getHAR).sort(InspectorTest.resourceURLComparer);
             InspectorTest.addObject(resources, InspectorTest.HARNondeterministicPropertiesWithSize);
             InspectorTest.disableResourceTracking();
             InspectorTest.completeTest();
diff --git a/LayoutTests/http/tests/inspector/resource-parameters.html b/LayoutTests/http/tests/inspector/resource-parameters.html
index 83e9cde..3da6030 100644
--- a/LayoutTests/http/tests/inspector/resource-parameters.html
+++ b/LayoutTests/http/tests/inspector/resource-parameters.html
@@ -32,7 +32,14 @@ function onIframeLoad()
 
 function frontend_enableResourceTracking(testController)
 {
-    if (!WebInspector.panels.resources.resourceTrackingEnabled) {
+    if (Preferences.networkPanelEnabled) {
+        if (!WebInspector.panels.network._pageWasReloaded) {
+            WebInspector.panels.network._pageWasReloaded = true;
+            WebInspector.panels.network._reset();
+            InspectorBackend.reloadPage();
+            return "enabling";
+        }
+    } else if (!WebInspector.panels.resources.resourceTrackingEnabled) {
         WebInspector.panels.resources.toggleResourceTracking();
         return "enabling";
     }
@@ -43,7 +50,8 @@ function frontend_dumpFormData(testController)
 {
     var resource = WebInspector.resourceForURL("http://localhost:8000/inspector/resources/post-target.cgi?queryParam1=queryValue1&queryParam2=");
 
-    WebInspector.panels.resources.toggleResourceTracking();
+    if (!Preferences.networkPanelEnabled)
+        WebInspector.panels.resources.toggleResourceTracking();
 
     if (!resource) {
         testController.notifyDone("No resource found");
diff --git a/LayoutTests/inspector/extensions-resources.html b/LayoutTests/inspector/extensions-resources.html
index b70f971..02f33a2 100755
--- a/LayoutTests/inspector/extensions-resources.html
+++ b/LayoutTests/inspector/extensions-resources.html
@@ -55,7 +55,7 @@ function extension_testGetPageTimings(nextTest)
 function doXHR()
 {
     var xhr = new XMLHttpRequest();
-    xhr.open('GET', location.href, false);
+    xhr.open("GET", location.href, false);
     xhr.send(null);
 }
 
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 8cda2a1..489569f 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,47 @@
+2010-10-27  Pavel Feldman  <pfeldman at chromium.org>
+
+        Reviewed by Timothy Hatcher.
+
+        Web Inspector: make debugger work against new resource manager.
+        https://bugs.webkit.org/show_bug.cgi?id=48376
+
+        * inspector/Inspector.idl:
+        * inspector/InspectorController.cpp:
+        (WebCore::InspectorController::identifierForInitialRequest):
+        * inspector/InspectorResourceAgent.cpp:
+        (WebCore::InspectorResourceAgent::identifierForInitialRequest):
+        * inspector/InspectorResourceAgent.h:
+        * inspector/front-end/ExtensionServer.js:
+        (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+        * inspector/front-end/Resource.js:
+        (WebInspector.Resource.prototype.set content):
+        * inspector/front-end/ResourceManager.js:
+        (WebInspector.ResourceManager):
+        (WebInspector.ResourceManager.prototype.identifierForInitialRequest):
+        (WebInspector.ResourceManager.prototype._createResource):
+        (WebInspector.ResourceManager.prototype.willSendRequest):
+        (WebInspector.ResourceManager.prototype._updateResourceWithRequest):
+        (WebInspector.ResourceManager.prototype.didFinishLoading):
+        (WebInspector.ResourceManager.prototype.didFailLoading):
+        (WebInspector.ResourceManager.prototype.setOverrideContent):
+        (WebInspector.ResourceManager.prototype._processCachedResources):
+        (WebInspector.ResourceManager.prototype._addFramesRecursively):
+        (WebInspector.ResourceManager.prototype.resourceForURL):
+        (WebInspector.ResourceManager.prototype.addConsoleMessage):
+        (WebInspector.ResourceManager.prototype.clearConsoleMessages):
+        (WebInspector.ResourceManager.prototype.forAllResources):
+        (WebInspector.ResourceManager.prototype._bindResourceURL):
+        (WebInspector.ResourceManager.prototype._unbindResourceURL):
+        (WebInspector.ResourceManager.getContent):
+        (WebInspector.ResourceTreeModel):
+        (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
+        (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
+        (WebInspector.ResourceTreeModel.prototype._clearResources):
+        * inspector/front-end/StoragePanel.js:
+        (WebInspector.StoragePanel.prototype.addOrUpdateFrame):
+        * inspector/front-end/networkPanel.css:
+        (.network.panel .resources-dividers):
+
 2010-10-28  Andy Estes  <aestes at apple.com>
 
         One more Qt fix due to r70754.
diff --git a/WebCore/inspector/Inspector.idl b/WebCore/inspector/Inspector.idl
index 2da0a92..c9b9c4e 100644
--- a/WebCore/inspector/Inspector.idl
+++ b/WebCore/inspector/Inspector.idl
@@ -110,7 +110,7 @@ module core {
 
         [handler=Resource] void cachedResources(out Object resources);
         [handler=Resource] void resourceContent(in unsigned long frameId, in String url, in boolean base64Encode, out String content);
-        [notify] void identifierForInitialRequest(out long identifier, out String url, out Object loader, out boolean isMainResource);
+        [notify] void identifierForInitialRequest(out long identifier, out String url, out Object loader);
         [notify] void willSendRequest(out long identifier, out double time, out Object request, out Object redirectResponse);
         [notify] void markResourceAsCached(out long identifier);
         [notify] void didReceiveResponse(out long identifier, out double time, out String resourceType, out Object response);
diff --git a/WebCore/inspector/InspectorController.cpp b/WebCore/inspector/InspectorController.cpp
index d62ebb6..31f4505 100644
--- a/WebCore/inspector/InspectorController.cpp
+++ b/WebCore/inspector/InspectorController.cpp
@@ -920,10 +920,10 @@ void InspectorController::identifierForInitialRequest(unsigned long identifier,
         return;
     ASSERT(m_inspectedPage);
 
-    bool isMainResource = isMainResourceLoader(loader, request.url());
-
     if (m_resourceAgent)
-        m_resourceAgent->identifierForInitialRequest(identifier, request.url(), loader, isMainResource);
+        m_resourceAgent->identifierForInitialRequest(identifier, request.url(), loader);
+
+    bool isMainResource = isMainResourceLoader(loader, request.url());
 
     ensureSettingsLoaded();
     if (!isMainResource && !resourceTrackingEnabled())
diff --git a/WebCore/inspector/InspectorResourceAgent.cpp b/WebCore/inspector/InspectorResourceAgent.cpp
index c711974..9f8062f 100644
--- a/WebCore/inspector/InspectorResourceAgent.cpp
+++ b/WebCore/inspector/InspectorResourceAgent.cpp
@@ -274,10 +274,10 @@ InspectorResourceAgent::~InspectorResourceAgent()
 {
 }
 
-void InspectorResourceAgent::identifierForInitialRequest(unsigned long identifier, const KURL& url, DocumentLoader* loader, bool isMainResource)
+void InspectorResourceAgent::identifierForInitialRequest(unsigned long identifier, const KURL& url, DocumentLoader* loader)
 {
     RefPtr<InspectorObject> loaderObject = buildObjectForDocumentLoader(loader);
-    m_frontend->identifierForInitialRequest(identifier, url.string(), loaderObject, isMainResource);
+    m_frontend->identifierForInitialRequest(identifier, url.string(), loaderObject);
 }
 
 void InspectorResourceAgent::willSendRequest(unsigned long identifier, ResourceRequest& request, const ResourceResponse& redirectResponse)
diff --git a/WebCore/inspector/InspectorResourceAgent.h b/WebCore/inspector/InspectorResourceAgent.h
index 8a54c89..1cdd292 100644
--- a/WebCore/inspector/InspectorResourceAgent.h
+++ b/WebCore/inspector/InspectorResourceAgent.h
@@ -77,7 +77,7 @@ public:
 
     ~InspectorResourceAgent();
 
-    void identifierForInitialRequest(unsigned long identifier, const KURL&, DocumentLoader*, bool isMainResource);
+    void identifierForInitialRequest(unsigned long identifier, const KURL&, DocumentLoader*);
     void willSendRequest(unsigned long identifier, ResourceRequest&, const ResourceResponse& redirectResponse);
     void markResourceAsCached(unsigned long identifier);
     void didReceiveResponse(unsigned long identifier, DocumentLoader* laoder, const ResourceResponse&);
diff --git a/WebCore/inspector/front-end/ExtensionServer.js b/WebCore/inspector/front-end/ExtensionServer.js
index ea73c39..5e593f7 100644
--- a/WebCore/inspector/front-end/ExtensionServer.js
+++ b/WebCore/inspector/front-end/ExtensionServer.js
@@ -299,6 +299,7 @@ WebInspector.ExtensionServer.prototype = {
         for (var i = 0; i < ids.length; ++i) {
             var id = ids[i];
             var resource = WebInspector.networkResources[id];
+ 
             if (!resource)
                 response.push(this._status.E_NOTFOUND(id));
             else
diff --git a/WebCore/inspector/front-end/Resource.js b/WebCore/inspector/front-end/Resource.js
index c1385a7..2df7b73 100644
--- a/WebCore/inspector/front-end/Resource.js
+++ b/WebCore/inspector/front-end/Resource.js
@@ -600,6 +600,11 @@ WebInspector.Resource.prototype = {
             WebInspector.console.addMessage(msg);
     },
 
+    set content(content)
+    {
+        this._content = content;
+    },
+
     getContent: function(callback)
     {
         if (this._content) {
diff --git a/WebCore/inspector/front-end/ResourceManager.js b/WebCore/inspector/front-end/ResourceManager.js
index 0d5b485..b181958 100644
--- a/WebCore/inspector/front-end/ResourceManager.js
+++ b/WebCore/inspector/front-end/ResourceManager.js
@@ -48,6 +48,7 @@ WebInspector.ResourceManager = function()
         "didCloseWebSocket");
 
     this._resourcesById = {};
+    this._resourcesByURL = {};
     this._resourceTreeModel = new WebInspector.ResourceTreeModel();
     InspectorBackend.cachedResources(this._processCachedResources.bind(this));
 }
@@ -59,14 +60,17 @@ WebInspector.ResourceManager.prototype = {
             WebInspector[arguments[i]] = this[arguments[i]].bind(this);
     },
 
-    identifierForInitialRequest: function(identifier, url, loader, isMainResource)
+    identifierForInitialRequest: function(identifier, url, loader)
     {
         var resource = this._createResource(identifier, url, loader);
-        if (isMainResource) {
+        if (loader.url === url) {
             resource.isMainResource = true;
             WebInspector.mainResource = resource;
         }
 
+        // It is important to bind resource url early (before scripts compile).
+        this._bindResourceURL(resource);
+
         WebInspector.panels.network.addResource(resource);
         WebInspector.panels.audits.resourceStarted(resource);
     },
@@ -75,6 +79,7 @@ WebInspector.ResourceManager.prototype = {
     {
         var resource = new WebInspector.Resource(identifier, url);
         resource.loader = loader;
+        resource.documentURL = loader.url;
 
         this._resourcesById[identifier] = resource;
         return resource;
@@ -95,9 +100,7 @@ WebInspector.ResourceManager.prototype = {
             resource = this._appendRedirect(resource.identifier, request.url);
         }
 
-        resource.requestMethod = request.httpMethod;
-        resource.requestHeaders = request.httpHeaderFields;
-        resource.requestFormData = request.requestFormData;
+        this._updateResourceWithRequest(resource, request);
         resource.startTime = time;
 
         if (isRedirect) {
@@ -107,6 +110,13 @@ WebInspector.ResourceManager.prototype = {
             WebInspector.panels.network.refreshResource(resource);
     },
 
+    _updateResourceWithRequest: function(resource, request)
+    {
+        resource.requestMethod = request.httpMethod;
+        resource.requestHeaders = request.httpHeaderFields;
+        resource.requestFormData = request.requestFormData;
+    },
+
     _appendRedirect: function(identifier, redirectURL)
     {
         var originalResource = this._resourcesById[identifier];
@@ -189,6 +199,7 @@ WebInspector.ResourceManager.prototype = {
 
         WebInspector.panels.network.refreshResource(resource);
         WebInspector.panels.audits.resourceFinished(resource);
+        WebInspector.extensionServer.notifyResourceFinished(resource);
         delete this._resourcesById[identifier];
     },
 
@@ -199,10 +210,12 @@ WebInspector.ResourceManager.prototype = {
             return;
 
         resource.failed = true;
+        resource.finished = true;
         resource.endTime = time;
 
         WebInspector.panels.network.refreshResource(resource);
         WebInspector.panels.audits.resourceFinished(resource);
+        WebInspector.extensionServer.notifyResourceFinished(resource);
         delete this._resourcesById[identifier];
     },
 
@@ -228,13 +241,12 @@ WebInspector.ResourceManager.prototype = {
 
     setOverrideContent: function(identifier, sourceString, type)
     {
-        var resource = this._resourcesById[identifier];
+        var resource = WebInspector.panels.network.resources[identifier];
         if (!resource)
             return;
 
         resource.type = WebInspector.Resource.Type[type];
-        resource.overridenContent = sourceString;
-
+        resource.content = sourceString;
         WebInspector.panels.network.refreshResource(resource);
     },
 
@@ -298,13 +310,20 @@ WebInspector.ResourceManager.prototype = {
 
     _processCachedResources: function(mainFramePayload)
     {
-        this._addFramesRecursively(null, mainFramePayload);
+        var mainResource = this._addFramesRecursively(null, mainFramePayload);
+        WebInspector.mainResource = mainResource;
+        mainResource.isMainResource = true;
     },
 
     _addFramesRecursively: function(parentFrameId, framePayload)
     {
         var frameResource = this._createResource(null, framePayload.resource.url, framePayload.resource.loader);
+        this._updateResourceWithRequest(frameResource, framePayload.resource.request);
+        this._updateResourceWithResponse(frameResource, framePayload.resource.response);
         frameResource.type = WebInspector.Resource.Type["Document"];
+        frameResource.finished = true;
+        this._bindResourceURL(frameResource);
+
         this._resourceTreeModel.addOrUpdateFrame(parentFrameId, framePayload.id, frameResource.displayName);
         this._resourceTreeModel.addResourceToFrame(framePayload.id, frameResource);
 
@@ -319,18 +338,24 @@ WebInspector.ResourceManager.prototype = {
             var resource = this._createResource(null, cachedResource.url, cachedResource.loader);
             this._updateResourceWithCachedResource(resource, cachedResource);
             resource.finished = true;
+            this._bindResourceURL(resource);
             this._resourceTreeModel.addResourceToFrame(framePayload.id, resource);
         }
+        return frameResource;
     },
 
     resourceForURL: function(url)
     {
-        return this._resourceTreeModel.resourceForURL(url);
+        // FIXME: receive frameId here.
+        var entry = this._resourcesByURL[url];
+        if (entry instanceof Array)
+            return entry[0];
+        return entry;
     },
 
     addConsoleMessage: function(msg)
     {
-        var resource = this._resourceTreeModel.resourceForURL(msg.url);
+        var resource = this.resourceForURL(msg.url);
         if (!resource)
             return;
 
@@ -355,6 +380,38 @@ WebInspector.ResourceManager.prototype = {
             resource.clearErrorsAndWarnings();
         }
         this._resourceTreeModel.forAllResources(callback);
+    },
+
+    forAllResources: function(callback)
+    {
+        this._resourceTreeModel.forAllResources(callback);
+    },
+
+    _bindResourceURL: function(resource)
+    {
+        var resourceForURL = this._resourcesByURL[resource.url];
+        if (!resourceForURL)
+            this._resourcesByURL[resource.url] = resource;
+        else if (resourceForURL instanceof Array)
+            resourceForURL.push(resource);
+        else
+            this._resourcesByURL[resource.url] = [resourceForURL];
+    },
+
+    _unbindResourceURL: function(resource)
+    {
+        var resourceForURL = this._resourcesByURL[resource.url];
+        if (!resourceForURL)
+            return;
+
+        if (resourceForURL instanceof Array) {
+            resourceForURL.remove(resource, true);
+            if (resourceForURL.length === 1)
+                this._resourcesByURL[resource.url] = resourceForURL[0];
+            return;
+        }
+
+        delete this._resourcesByURL[resource.url];
     }
 }
 
@@ -410,11 +467,6 @@ WebInspector.ResourceManager.existingResourceViewForResource = function(resource
 
 WebInspector.ResourceManager.getContent = function(resource, base64Encode, callback)
 {
-    if ("overridenContent" in resource) {
-        callback(resource.overridenContent);
-        return;
-    }
-
     // FIXME: eventually, cached resources will have no identifiers.
     if (resource.loader)
         InspectorBackend.resourceContent(resource.loader.frameId, resource.url, base64Encode, callback);
@@ -426,7 +478,6 @@ WebInspector.ResourceTreeModel = function()
 {
     this._resourcesByFrameId = {};
     this._subframes = {};
-    this._resourcesByURL = {};
 }
 
 WebInspector.ResourceTreeModel.prototype = {
@@ -449,8 +500,10 @@ WebInspector.ResourceTreeModel.prototype = {
         this.addOrUpdateFrame(parentFrameId, loader.frameId, tmpResource.displayName);
 
         var resourcesForFrame = this._resourcesByFrameId[loader.frameId];
-        for (var i = 0; resourcesForFrame && i < resourcesForFrame.length; ++i)
+        for (var i = 0; resourcesForFrame && i < resourcesForFrame.length; ++i) {
+            WebInspector.resourceManager._bindResourceURL(resourcesForFrame[i]);
             WebInspector.panels.storage.addResourceToFrame(loader.frameId, resourcesForFrame[i]);
+        }
     },
 
     frameDetachedFromParent: function(frameId)
@@ -483,7 +536,6 @@ WebInspector.ResourceTreeModel.prototype = {
             this._resourcesByFrameId[frameId] = resourcesForFrame;
         }
         resourcesForFrame.push(resource);
-        this._bindResourceURL(resource);
 
         WebInspector.panels.storage.addResourceToFrame(frameId, resource);
     },
@@ -501,7 +553,7 @@ WebInspector.ResourceTreeModel.prototype = {
                 preservedResourcesForFrame.push(resource);
                 continue;
             }
-            this._unbindResourceURL(resource);
+            WebInspector.resourceManager._unbindResourceURL(resource);
         }
 
         delete this._resourcesByFrameId[frameId];
@@ -509,42 +561,6 @@ WebInspector.ResourceTreeModel.prototype = {
             this._resourcesByFrameId[frameId] = preservedResourcesForFrame;
     },
 
-    _bindResourceURL: function(resource)
-    {
-        var resourceForURL = this._resourcesByURL[resource.url];
-        if (!resourceForURL)
-            this._resourcesByURL[resource.url] = resource;
-        else if (resourceForURL instanceof Array)
-            resourceForURL.push(resource);
-        else
-            this._resourcesByURL[resource.url] = [ resourceForURL ];
-    },
-
-    _unbindResourceURL: function(resource)
-    {
-        var resourceForURL = this._resourcesByURL[resource.url];
-        if (!resourceForURL)
-            return;
-
-        if (resourceForURL instanceof Array) {
-            resourceForURL.remove(resource, true);
-            if (resourceForURL.length === 1)
-                this._resourcesByURL[resource.url] = resourceForURL[0];
-            return;
-        }
-
-        delete this._resourcesByURL[resource.url];
-    },
-
-    resourceForURL: function(url)
-    {
-        // FIXME: receive frameId here.
-        var entry = this._resourcesByURL[url];
-        if (entry instanceof Array)
-            return entry[0];
-        return entry;
-    },
-
     forAllResources: function(callback)
     {
         this._callForFrameResources(0, callback);
diff --git a/WebCore/inspector/front-end/StoragePanel.js b/WebCore/inspector/front-end/StoragePanel.js
index abb5785..f90f40e 100644
--- a/WebCore/inspector/front-end/StoragePanel.js
+++ b/WebCore/inspector/front-end/StoragePanel.js
@@ -130,7 +130,7 @@ WebInspector.StoragePanel.prototype = {
 
         var parentTreeElement = parentFrameId ? this._treeElementForFrameId[parentFrameId] : this.resourcesListTreeElement;
         if (!parentTreeElement) {
-            console.error("No frame with id:" + parentFrameId + " to route " + displayName + " to.")
+            console.warning("No frame with id:" + parentFrameId + " to route " + displayName + " to.")
             return;
         }
 
diff --git a/WebCore/inspector/front-end/networkPanel.css b/WebCore/inspector/front-end/networkPanel.css
index 4bbad24..0bb617f 100644
--- a/WebCore/inspector/front-end/networkPanel.css
+++ b/WebCore/inspector/front-end/networkPanel.css
@@ -419,6 +419,10 @@
     background-color: rgba(0, 0, 255, 0.5);
 }
 
+.network.panel .resources-dividers {
+    z-index: 0;
+}
+
 .network.panel .resources-dividers-label-bar {
     background-color: transparent;
     border: none;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list