| Index: third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/sdk/Target.js b/third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| index ccb48e424692ea43737cd1ce7227e686e1f4d7f6..a39636d1632cb96d639a4f32d057abc2e65e87a4 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/sdk/Target.js
|
| @@ -26,37 +26,6 @@ WebInspector.Target = function(targetManager, name, type, connection, parentTarg
|
|
|
| /** @type {!Map.<!Function, !WebInspector.SDKModel>} */
|
| this._modelByConstructor = new Map();
|
| -
|
| - /** @type {!WebInspector.ConsoleModel} */
|
| - this.consoleModel = new WebInspector.ConsoleModel(this);
|
| - /** @type {!WebInspector.NetworkManager} */
|
| - this.networkManager = new WebInspector.NetworkManager(this);
|
| - /** @type {!WebInspector.ResourceTreeModel} */
|
| - this.resourceTreeModel = new WebInspector.ResourceTreeModel(this);
|
| - /** @type {!WebInspector.NetworkLog} */
|
| - this.networkLog = new WebInspector.NetworkLog(this);
|
| -
|
| - /** @type {!WebInspector.RuntimeModel} */
|
| - this.runtimeModel = new WebInspector.RuntimeModel(this);
|
| - if (this.hasJSContext())
|
| - new WebInspector.DebuggerModel(this);
|
| -
|
| - if (this._type === WebInspector.Target.Type.Page) {
|
| - new WebInspector.DOMModel(this);
|
| - new WebInspector.CSSModel(this);
|
| - }
|
| -
|
| - /** @type {?WebInspector.WorkerManager} */
|
| - this.workerManager = !this.isDedicatedWorker() ? new WebInspector.WorkerManager(this) : null;
|
| - /** @type {!WebInspector.CPUProfilerModel} */
|
| - this.cpuProfilerModel = new WebInspector.CPUProfilerModel(this);
|
| - /** @type {!WebInspector.HeapProfilerModel} */
|
| - this.heapProfilerModel = new WebInspector.HeapProfilerModel(this);
|
| -
|
| - this.tracingManager = new WebInspector.TracingManager(this);
|
| -
|
| - if (this.isPage())
|
| - this.serviceWorkerManager = new WebInspector.ServiceWorkerManager(this);
|
| }
|
|
|
| /**
|
| @@ -90,6 +59,15 @@ WebInspector.Target.prototype = {
|
|
|
| /**
|
| *
|
| + * @return {number}
|
| + */
|
| + type: function()
|
| + {
|
| + return this._type;
|
| + },
|
| +
|
| + /**
|
| + *
|
| * @return {!WebInspector.TargetManager}
|
| */
|
| targetManager: function()
|
| @@ -254,351 +232,3 @@ WebInspector.SDKModel.prototype = {
|
|
|
| __proto__: WebInspector.SDKObject.prototype
|
| }
|
| -
|
| -/**
|
| - * @constructor
|
| - * @extends {WebInspector.Object}
|
| - */
|
| -WebInspector.TargetManager = function()
|
| -{
|
| - WebInspector.Object.call(this);
|
| - /** @type {!Array.<!WebInspector.Target>} */
|
| - this._targets = [];
|
| - /** @type {!Array.<!WebInspector.TargetManager.Observer>} */
|
| - this._observers = [];
|
| - this._observerTypeSymbol = Symbol("observerType");
|
| - /** @type {!Object.<string, !Array.<{modelClass: !Function, thisObject: (!Object|undefined), listener: function(!WebInspector.Event)}>>} */
|
| - this._modelListeners = {};
|
| - this._isSuspended = false;
|
| -}
|
| -
|
| -WebInspector.TargetManager.Events = {
|
| - InspectedURLChanged: "InspectedURLChanged",
|
| - MainFrameNavigated: "MainFrameNavigated",
|
| - Load: "Load",
|
| - PageReloadRequested: "PageReloadRequested",
|
| - WillReloadPage: "WillReloadPage",
|
| - TargetDisposed: "TargetDisposed",
|
| - SuspendStateChanged: "SuspendStateChanged"
|
| -}
|
| -
|
| -WebInspector.TargetManager.prototype = {
|
| - suspendAllTargets: function()
|
| - {
|
| - if (this._isSuspended)
|
| - return;
|
| - this._isSuspended = true;
|
| - this.dispatchEventToListeners(WebInspector.TargetManager.Events.SuspendStateChanged);
|
| -
|
| - for (var i = 0; i < this._targets.length; ++i) {
|
| - for (var model of this._targets[i]._modelByConstructor.values())
|
| - model.suspendModel();
|
| - }
|
| - },
|
| -
|
| - /**
|
| - * @return {!Promise}
|
| - */
|
| - resumeAllTargets: function()
|
| - {
|
| - if (!this._isSuspended)
|
| - throw new Error("Not suspended");
|
| - this._isSuspended = false;
|
| - this.dispatchEventToListeners(WebInspector.TargetManager.Events.SuspendStateChanged);
|
| -
|
| - var promises = [];
|
| - for (var i = 0; i < this._targets.length; ++i) {
|
| - for (var model of this._targets[i]._modelByConstructor.values())
|
| - promises.push(model.resumeModel());
|
| - }
|
| - return Promise.all(promises);
|
| - },
|
| -
|
| - suspendAndResumeAllTargets: function()
|
| - {
|
| - this.suspendAllTargets();
|
| - this.resumeAllTargets();
|
| - },
|
| -
|
| - /**
|
| - * @return {boolean}
|
| - */
|
| - allTargetsSuspended: function()
|
| - {
|
| - return this._isSuspended;
|
| - },
|
| -
|
| - /**
|
| - * @return {string}
|
| - */
|
| - inspectedPageURL: function()
|
| - {
|
| - if (!this._targets.length)
|
| - return "";
|
| -
|
| - return this._targets[0].resourceTreeModel.inspectedPageURL();
|
| - },
|
| -
|
| - /**
|
| - * @return {string}
|
| - */
|
| - inspectedPageDomain: function()
|
| - {
|
| - if (!this._targets.length)
|
| - return "";
|
| -
|
| - return this._targets[0].resourceTreeModel.inspectedPageDomain();
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.Event} event
|
| - */
|
| - _redispatchEvent: function(event)
|
| - {
|
| - this.dispatchEventToListeners(event.type, event.data);
|
| - },
|
| -
|
| - /**
|
| - * @param {boolean=} ignoreCache
|
| - * @param {string=} injectedScript
|
| - */
|
| - reloadPage: function(ignoreCache, injectedScript)
|
| - {
|
| - if (this._targets.length)
|
| - this._targets[0].resourceTreeModel.reloadPage(ignoreCache, injectedScript);
|
| - },
|
| -
|
| - /**
|
| - * @param {!Function} modelClass
|
| - * @param {string} eventType
|
| - * @param {function(!WebInspector.Event)} listener
|
| - * @param {!Object=} thisObject
|
| - */
|
| - addModelListener: function(modelClass, eventType, listener, thisObject)
|
| - {
|
| - for (var i = 0; i < this._targets.length; ++i) {
|
| - var model = this._targets[i]._modelByConstructor.get(modelClass);
|
| - if (model)
|
| - model.addEventListener(eventType, listener, thisObject);
|
| - }
|
| - if (!this._modelListeners[eventType])
|
| - this._modelListeners[eventType] = [];
|
| - this._modelListeners[eventType].push({ modelClass: modelClass, thisObject: thisObject, listener: listener });
|
| - },
|
| -
|
| - /**
|
| - * @param {!Function} modelClass
|
| - * @param {string} eventType
|
| - * @param {function(!WebInspector.Event)} listener
|
| - * @param {!Object=} thisObject
|
| - */
|
| - removeModelListener: function(modelClass, eventType, listener, thisObject)
|
| - {
|
| - if (!this._modelListeners[eventType])
|
| - return;
|
| -
|
| - for (var i = 0; i < this._targets.length; ++i) {
|
| - var model = this._targets[i]._modelByConstructor.get(modelClass);
|
| - if (model)
|
| - model.removeEventListener(eventType, listener, thisObject);
|
| - }
|
| -
|
| - var listeners = this._modelListeners[eventType];
|
| - for (var i = 0; i < listeners.length; ++i) {
|
| - if (listeners[i].modelClass === modelClass && listeners[i].listener === listener && listeners[i].thisObject === thisObject)
|
| - listeners.splice(i--, 1);
|
| - }
|
| - if (!listeners.length)
|
| - delete this._modelListeners[eventType];
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.TargetManager.Observer} targetObserver
|
| - * @param {number=} type
|
| - */
|
| - observeTargets: function(targetObserver, type)
|
| - {
|
| - if (this._observerTypeSymbol in targetObserver)
|
| - throw new Error("Observer can only be registered once");
|
| - targetObserver[this._observerTypeSymbol] = type || 0x7fff;
|
| - this.targets(type).forEach(targetObserver.targetAdded.bind(targetObserver));
|
| - this._observers.push(targetObserver);
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.TargetManager.Observer} targetObserver
|
| - */
|
| - unobserveTargets: function(targetObserver)
|
| - {
|
| - delete targetObserver[this._observerTypeSymbol];
|
| - this._observers.remove(targetObserver);
|
| - },
|
| -
|
| - /**
|
| - * @param {string} name
|
| - * @param {number} type
|
| - * @param {!InspectorBackendClass.Connection} connection
|
| - * @param {?WebInspector.Target} parentTarget
|
| - * @return {!WebInspector.Target}
|
| - */
|
| - createTarget: function(name, type, connection, parentTarget)
|
| - {
|
| - var target = new WebInspector.Target(this, name, type, connection, parentTarget);
|
| - this.addTarget(target);
|
| - return target;
|
| - },
|
| -
|
| - /**
|
| - * @param {number} type
|
| - * @return {!Array<!WebInspector.TargetManager.Observer>}
|
| - */
|
| - _observersByType: function(type)
|
| - {
|
| - var result = [];
|
| - for (var observer of this._observers) {
|
| - if (observer[this._observerTypeSymbol] & type)
|
| - result.push(observer);
|
| - }
|
| - return result;
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| - addTarget: function(target)
|
| - {
|
| - 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 copy = this._observersByType(target._type);
|
| - for (var i = 0; i < copy.length; ++i)
|
| - copy[i].targetAdded(target);
|
| -
|
| - for (var eventType in this._modelListeners) {
|
| - var listeners = this._modelListeners[eventType];
|
| - for (var i = 0; i < listeners.length; ++i) {
|
| - var model = target._modelByConstructor.get(listeners[i].modelClass);
|
| - if (model)
|
| - model.addEventListener(eventType, listeners[i].listener, listeners[i].thisObject);
|
| - }
|
| - }
|
| - },
|
| -
|
| - /**
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| - removeTarget: function(target)
|
| - {
|
| - 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 copy = this._observersByType(target._type);
|
| - for (var i = 0; i < copy.length; ++i)
|
| - copy[i].targetRemoved(target);
|
| -
|
| - for (var eventType in this._modelListeners) {
|
| - var listeners = this._modelListeners[eventType];
|
| - for (var i = 0; i < listeners.length; ++i) {
|
| - var model = target._modelByConstructor.get(listeners[i].modelClass);
|
| - if (model)
|
| - model.removeEventListener(eventType, listeners[i].listener, listeners[i].thisObject);
|
| - }
|
| - }
|
| - },
|
| -
|
| - /**
|
| - * @param {number=} type
|
| - * @return {boolean}
|
| - */
|
| - hasTargets: function(type)
|
| - {
|
| - return !!this.targets(type).length;
|
| - },
|
| -
|
| - /**
|
| - * @param {number=} type
|
| - * @return {!Array.<!WebInspector.Target>}
|
| - */
|
| - targets: function(type)
|
| - {
|
| - if (!type)
|
| - return this._targets.slice();
|
| -
|
| - var result = [];
|
| - for (var target of this._targets) {
|
| - if (target._type & type)
|
| - result.push(target);
|
| - }
|
| - return result;
|
| - },
|
| -
|
| - /**
|
| - * @return {!Array.<!WebInspector.Target>}
|
| - */
|
| - targetsWithJSContext: function()
|
| - {
|
| - var result = [];
|
| - for (var target of this._targets) {
|
| - if (target.hasJSContext())
|
| - result.push(target);
|
| - }
|
| - return result;
|
| - },
|
| -
|
| - /**
|
| - *
|
| - * @param {number} id
|
| - * @return {?WebInspector.Target}
|
| - */
|
| - targetById: function(id)
|
| - {
|
| - for (var i = 0; i < this._targets.length; ++i) {
|
| - if (this._targets[i].id() === id)
|
| - return this._targets[i];
|
| - }
|
| - return null;
|
| - },
|
| -
|
| - /**
|
| - * @return {?WebInspector.Target}
|
| - */
|
| - mainTarget: function()
|
| - {
|
| - return this._targets[0] || null;
|
| - },
|
| -
|
| - __proto__: WebInspector.Object.prototype
|
| -}
|
| -
|
| -/**
|
| - * @interface
|
| - */
|
| -WebInspector.TargetManager.Observer = function()
|
| -{
|
| -}
|
| -
|
| -WebInspector.TargetManager.Observer.prototype = {
|
| - /**
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| - targetAdded: function(target) { },
|
| -
|
| - /**
|
| - * @param {!WebInspector.Target} target
|
| - */
|
| - targetRemoved: function(target) { },
|
| -}
|
| -
|
| -/**
|
| - * @type {!WebInspector.TargetManager}
|
| - */
|
| -WebInspector.targetManager = new WebInspector.TargetManager();
|
|
|