Chromium Code Reviews| Index: Source/devtools/front_end/Target.js |
| diff --git a/Source/devtools/front_end/Target.js b/Source/devtools/front_end/Target.js |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..30887dc38536f6ac96d20b271a37122f78f33884 |
| --- /dev/null |
| +++ b/Source/devtools/front_end/Target.js |
| @@ -0,0 +1,82 @@ |
| +/** |
| + * Copyright 2014 The Chromium Authors. All rights reserved. |
|
aandrey
2014/03/04 10:05:16
odd licence
sergeyv
2014/03/04 12:42:37
Header was changed recently.
http://www.chromium.
|
| + * Use of this source code is governed by a BSD-style license that can be |
| + * found in the LICENSE file. |
| + */ |
| + |
| +/** |
| + * @constructor |
| + * @extends {WebInspector.Object} |
| + * @param {!InspectorBackendClass.Connection} connection |
| + */ |
| +WebInspector.Target = function(connection) |
| +{ |
| + WebInspector.Object.call(this); |
| + this.connection = connection; |
| + this.canScreenCast = false; |
| + this.canInspectWorkers = false; |
| + |
| + connection.agent("Page").canScreencast(this._initializeCapability.bind(this, "canScreencast", null)); |
| + connection.agent("Worker").canInspectWorkers(this._initializeCapability.bind(this, "canInspectWorkers", this._loadedWithCapabilities.bind(this))); |
| + |
| + // In case of loading as a web page with no bindings / harness, kick off initialization manually. |
| + if (InspectorFrontendHost.isStub) |
| + // give a chance to add listeners of WebInspector.Target.Events.TargetIsReady |
|
aandrey
2014/03/04 10:05:16
add {} braces
sergeyv
2014/03/04 12:42:38
Done.
|
| + setTimeout(this._loadedWithCapabilities.bind(this), 0); |
| +} |
| + |
| +WebInspector.Target.Events = { |
| + TargetIsReady: "TargetIsReady" |
| +} |
| + |
| +WebInspector.Target.prototype = { |
| + |
| + _initializeCapability: function(name, callback, error, result) |
| + { |
| + this[name] = result; |
| + if (callback) |
| + callback(); |
| + }, |
| + |
| + _loadedWithCapabilities: function() |
|
aandrey
2014/03/04 10:05:16
this does not seem to be private
sergeyv
2014/03/04 12:42:38
There is no usages of this function out of this fi
|
| + { |
| + this.consoleModel = new WebInspector.ConsoleModel(this); |
| + this.networkManager = new WebInspector.NetworkManager(this); |
| + this.resourceTreeModel = new WebInspector.ResourceTreeModel(this); |
| + this.debuggerModel = new WebInspector.DebuggerModel(); |
| + this.runtimeModel = new WebInspector.RuntimeModel(this); |
| + |
| + this.dispatchEventToListeners(WebInspector.Target.Events.TargetIsReady); |
| + }, |
| + |
| + __proto__: WebInspector.Object.prototype |
| +} |
| + |
| +/** |
| + * @constructor |
| + * @extends {WebInspector.Object} |
| + */ |
| +WebInspector.TargetManager = function() |
| +{ |
| + this._targets = []; |
|
aandrey
2014/03/04 10:05:16
jsdoc
sergeyv
2014/03/04 12:42:38
Done.
|
| +} |
| + |
| +WebInspector.TargetManager.Events = { |
| + TargetSwitched: "TargetSwitched" |
| +} |
| + |
| +WebInspector.TargetManager.prototype = { |
| + |
| + /** |
| + * @param {!InspectorBackendClass.Connection} connection |
| + * @return {!WebInspector.Target} |
| + */ |
| + newConnectionAvailable: function(connection) |
| + { |
| + var newTarget = new WebInspector.Target(connection); |
| + this._targets.push(newTarget); |
| + return newTarget; |
| + }, |
| + |
| + __proto__: WebInspector.Object.prototype |
| +} |