| Index: third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js b/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
|
| index 6cea05b6809fea62ec437a308a933c07bf0e3029..19a97cfbe7ff2d1d72afca49e3875ac2078e7612 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/bindings/NetworkProject.js
|
| @@ -83,7 +83,8 @@ Bindings.NetworkProject = class extends SDK.SDKObject {
|
| resourceTreeModel.addEventListener(
|
| SDK.ResourceTreeModel.Events.FrameWillNavigate, this._frameWillNavigate, this),
|
| resourceTreeModel.addEventListener(
|
| - SDK.ResourceTreeModel.Events.MainFrameNavigated, this._mainFrameNavigated, this));
|
| + SDK.ResourceTreeModel.Events.MainFrameNavigated, this._mainFrameNavigated, this),
|
| + resourceTreeModel.addEventListener(SDK.ResourceTreeModel.Events.FrameDetached, this._frameDetached, this));
|
| }
|
|
|
| var debuggerModel = SDK.DebuggerModel.fromTarget(target);
|
| @@ -313,20 +314,22 @@ Bindings.NetworkProject = class extends SDK.SDKObject {
|
| resource.contentURL().startsWith('data:'))
|
| return;
|
|
|
| + var frame = SDK.ResourceTreeFrame.fromResource(resource);
|
| // Never load document twice.
|
| - if (this._workspace.uiSourceCodeForURL(resource.url))
|
| + var projectId = Bindings.NetworkProject.projectId(this.target(), frame, false);
|
| + var project = this._workspaceProjects.get(projectId);
|
| + if (project && project.uiSourceCodeForURL(resource.url))
|
| return;
|
|
|
| - var uiSourceCode = this._createFile(resource, SDK.ResourceTreeFrame.fromResource(resource), false);
|
| + var uiSourceCode = this._createFile(resource, frame, false);
|
| uiSourceCode[Bindings.NetworkProject._resourceSymbol] = resource;
|
| this._addUISourceCodeWithProvider(uiSourceCode, resource, this._resourceMetadata(resource));
|
| }
|
|
|
| /**
|
| - * @param {!Common.Event} event
|
| + * @param {!SDK.ResourceTreeFrame} frame
|
| */
|
| - _frameWillNavigate(event) {
|
| - var frame = /** @type {!SDK.ResourceTreeFrame} */ (event.data);
|
| + _removeFrameResources(frame) {
|
| var project = this._workspaceProject(frame, false);
|
| for (var resource of frame.resources())
|
| project.removeUISourceCode(resource.url);
|
| @@ -338,9 +341,24 @@ Bindings.NetworkProject = class extends SDK.SDKObject {
|
| /**
|
| * @param {!Common.Event} event
|
| */
|
| + _frameWillNavigate(event) {
|
| + var frame = /** @type {!SDK.ResourceTreeFrame} */ (event.data);
|
| + this._removeFrameResources(frame);
|
| + }
|
| +
|
| + /**
|
| + * @param {!Common.Event} event
|
| + */
|
| + _frameDetached(event) {
|
| + var frame = /** @type {!SDK.ResourceTreeFrame} */ (event.data);
|
| + this._removeFrameResources(frame);
|
| + }
|
| +
|
| + /**
|
| + * @param {!Common.Event} event
|
| + */
|
| _mainFrameNavigated(event) {
|
| this._reset();
|
| - this._populate();
|
| }
|
|
|
| _suspendStateChanged() {
|
|
|