Chromium Code Reviews| Index: third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js |
| diff --git a/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js b/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js |
| index c7a4de86eddbd13756eb70532689f18571160a9d..26c50863a4ae95b4ed1e6a1e30675bdee9eb0e3c 100644 |
| --- a/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js |
| +++ b/third_party/WebKit/Source/devtools/front_end/sdk/TargetManager.js |
| @@ -85,7 +85,11 @@ WebInspector.TargetManager.prototype = { |
| if (!this._targets.length) |
| return ""; |
| - return this._targets[0].resourceTreeModel.inspectedPageURL(); |
| + var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(this._targets[0]); |
| + if (!resourceTreeModel) |
| + return ""; |
| + |
| + return resourceTreeModel.inspectedPageURL(); |
| }, |
| /** |
| @@ -96,7 +100,11 @@ WebInspector.TargetManager.prototype = { |
| if (!this._targets.length) |
| return ""; |
| - return this._targets[0].resourceTreeModel.inspectedPageDomain(); |
| + var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(this._targets[0]); |
| + if (!resourceTreeModel) |
| + return ""; |
| + |
| + return resourceTreeModel.inspectedPageDomain(); |
| }, |
| /** |
| @@ -113,8 +121,14 @@ WebInspector.TargetManager.prototype = { |
| */ |
| reloadPage: function(bypassCache, injectedScript) |
| { |
| - if (this._targets.length) |
| - this._targets[0].resourceTreeModel.reloadPage(bypassCache, injectedScript); |
| + if (!this._targets.length) |
| + return; |
| + |
| + var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(this._targets[0]); |
| + if (!resourceTreeModel) |
| + return; |
| + |
| + resourceTreeModel.reloadPage(bypassCache, injectedScript); |
| }, |
| /** |
| @@ -199,22 +213,20 @@ WebInspector.TargetManager.prototype = { |
| /** @type {!WebInspector.RuntimeModel} */ |
| target.runtimeModel = new WebInspector.RuntimeModel(target); |
| - var networkManager = null; |
| - if (target.hasNetworkCapability()) |
| - networkManager = new WebInspector.NetworkManager(target); |
| - |
| - /** @type {!WebInspector.ResourceTreeModel} */ |
| - target.resourceTreeModel = new WebInspector.ResourceTreeModel(target, networkManager); |
| + var resourceTreeModel = null; |
| - if (networkManager) |
| - new WebInspector.NetworkLog(target, networkManager); |
| + if (target.hasNetworkCapability()) { |
| + var networkManager = new WebInspector.NetworkManager(target); |
| + resourceTreeModel = new WebInspector.ResourceTreeModel(target, networkManager); |
|
dgozman
2016/07/14 16:29:29
This is browser capability, not network.
eostroukhov-old
2016/07/20 23:46:16
Apparently, it requires both... I updated it.
|
| + new WebInspector.NetworkLog(target, networkManager, resourceTreeModel); |
| + } |
| if (target.hasJSCapability()) |
| new WebInspector.DebuggerModel(target); |
| if (target.hasBrowserCapability()) { |
| - new WebInspector.DOMModel(target); |
| - new WebInspector.CSSModel(target); |
| + var domModel = new WebInspector.DOMModel(target); |
| + new WebInspector.CSSModel(target, domModel, /** @type {!WebInspector.ResourceTreeModel} */ (resourceTreeModel)); |
| } |
| /** @type {?WebInspector.WorkerManager} */ |
| @@ -249,11 +261,14 @@ WebInspector.TargetManager.prototype = { |
| { |
| this._targets.push(target); |
| if (this._targets.length === 1) { |
| - target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.InspectedURLChanged, this._redispatchEvent, this); |
| - target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.MainFrameNavigated, this._redispatchEvent, this); |
| - target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.Load, this._redispatchEvent, this); |
| - target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.PageReloadRequested, this._redispatchEvent, this); |
| - target.resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this); |
| + var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(target); |
| + if (resourceTreeModel) { |
| + resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.InspectedURLChanged, this._redispatchEvent, this); |
|
dgozman
2016/07/14 16:29:29
nit: while you are here, save the results of addEv
eostroukhov-old
2016/07/20 23:46:16
Done.
|
| + resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.MainFrameNavigated, this._redispatchEvent, this); |
| + resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.Load, this._redispatchEvent, this); |
| + resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.PageReloadRequested, this._redispatchEvent, this); |
| + resourceTreeModel.addEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this); |
| + } |
| } |
| var copy = this._observersForTarget(target); |
| for (var i = 0; i < copy.length; ++i) |
| @@ -276,10 +291,14 @@ WebInspector.TargetManager.prototype = { |
| { |
| this._targets.remove(target); |
| if (this._targets.length === 0) { |
| - target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.InspectedURLChanged, this._redispatchEvent, this); |
| - target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.MainFrameNavigated, this._redispatchEvent, this); |
| - target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.Load, this._redispatchEvent, this); |
| - target.resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this); |
| + var resourceTreeModel = WebInspector.ResourceTreeModel.fromTarget(target); |
| + if (resourceTreeModel) { |
| + resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.InspectedURLChanged, this._redispatchEvent, this); |
| + resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.MainFrameNavigated, this._redispatchEvent, this); |
| + resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.Load, this._redispatchEvent, this); |
| + resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.PageReloadRequested, this._redispatchEvent, this); |
| + resourceTreeModel.removeEventListener(WebInspector.ResourceTreeModel.EventTypes.WillReloadPage, this._redispatchEvent, this); |
| + } |
| } |
| var copy = this._observersForTarget(target); |
| for (var i = 0; i < copy.length; ++i) |