| Index: third_party/WebKit/Source/devtools/front_end/components/ExecutionContextSelector.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/components/ExecutionContextSelector.js b/third_party/WebKit/Source/devtools/front_end/components/ExecutionContextSelector.js
|
| deleted file mode 100644
|
| index e791e653e67152bd1c5e30860213fbb28e1ba91f..0000000000000000000000000000000000000000
|
| --- a/third_party/WebKit/Source/devtools/front_end/components/ExecutionContextSelector.js
|
| +++ /dev/null
|
| @@ -1,205 +0,0 @@
|
| -// Copyright 2014 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -/**
|
| - * @implements {SDK.TargetManager.Observer}
|
| - * @unrestricted
|
| - */
|
| -Components.ExecutionContextSelector = class {
|
| - /**
|
| - * @param {!SDK.TargetManager} targetManager
|
| - * @param {!UI.Context} context
|
| - */
|
| - constructor(targetManager, context) {
|
| - targetManager.observeTargets(this, SDK.Target.Capability.JS);
|
| - context.addFlavorChangeListener(SDK.ExecutionContext, this._executionContextChanged, this);
|
| - context.addFlavorChangeListener(SDK.Target, this._targetChanged, this);
|
| -
|
| - targetManager.addModelListener(
|
| - SDK.RuntimeModel, SDK.RuntimeModel.Events.ExecutionContextCreated, this._onExecutionContextCreated, this);
|
| - targetManager.addModelListener(
|
| - SDK.RuntimeModel, SDK.RuntimeModel.Events.ExecutionContextDestroyed, this._onExecutionContextDestroyed, this);
|
| - targetManager.addModelListener(
|
| - SDK.RuntimeModel, SDK.RuntimeModel.Events.ExecutionContextOrderChanged, this._onExecutionContextOrderChanged,
|
| - this);
|
| - this._targetManager = targetManager;
|
| - this._context = context;
|
| - }
|
| -
|
| - /**
|
| - * @override
|
| - * @param {!SDK.Target} target
|
| - */
|
| - targetAdded(target) {
|
| - // Defer selecting default target since we need all clients to get their
|
| - // targetAdded notifications first.
|
| - setImmediate(deferred.bind(this));
|
| -
|
| - /**
|
| - * @this {Components.ExecutionContextSelector}
|
| - */
|
| - function deferred() {
|
| - // We always want the second context for the service worker targets.
|
| - if (!this._context.flavor(SDK.Target))
|
| - this._context.setFlavor(SDK.Target, target);
|
| - }
|
| - }
|
| -
|
| - /**
|
| - * @override
|
| - * @param {!SDK.Target} target
|
| - */
|
| - targetRemoved(target) {
|
| - var currentExecutionContext = this._context.flavor(SDK.ExecutionContext);
|
| - if (currentExecutionContext && currentExecutionContext.target() === target)
|
| - this._currentExecutionContextGone();
|
| -
|
| - var targets = this._targetManager.targets(SDK.Target.Capability.JS);
|
| - if (this._context.flavor(SDK.Target) === target && targets.length)
|
| - this._context.setFlavor(SDK.Target, targets[0]);
|
| - }
|
| -
|
| - /**
|
| - * @param {!Common.Event} event
|
| - */
|
| - _executionContextChanged(event) {
|
| - var newContext = /** @type {?SDK.ExecutionContext} */ (event.data);
|
| - if (newContext) {
|
| - this._context.setFlavor(SDK.Target, newContext.target());
|
| - if (!this._ignoreContextChanged)
|
| - this._lastSelectedContextId = this._contextPersistentId(newContext);
|
| - }
|
| - }
|
| -
|
| - /**
|
| - * @param {!SDK.ExecutionContext} executionContext
|
| - * @return {string}
|
| - */
|
| - _contextPersistentId(executionContext) {
|
| - return executionContext.isDefault ? executionContext.target().name() + ':' + executionContext.frameId : '';
|
| - }
|
| -
|
| - /**
|
| - * @param {!Common.Event} event
|
| - */
|
| - _targetChanged(event) {
|
| - var newTarget = /** @type {?SDK.Target} */ (event.data);
|
| - var currentContext = this._context.flavor(SDK.ExecutionContext);
|
| -
|
| - if (!newTarget || (currentContext && currentContext.target() === newTarget))
|
| - return;
|
| -
|
| - var executionContexts = newTarget.runtimeModel.executionContexts();
|
| - if (!executionContexts.length)
|
| - return;
|
| -
|
| - var newContext = null;
|
| - for (var i = 0; i < executionContexts.length && !newContext; ++i) {
|
| - if (this._shouldSwitchToContext(executionContexts[i]))
|
| - newContext = executionContexts[i];
|
| - }
|
| - for (var i = 0; i < executionContexts.length && !newContext; ++i) {
|
| - if (this._isDefaultContext(executionContexts[i]))
|
| - newContext = executionContexts[i];
|
| - }
|
| - this._ignoreContextChanged = true;
|
| - this._context.setFlavor(SDK.ExecutionContext, newContext || executionContexts[0]);
|
| - this._ignoreContextChanged = false;
|
| - }
|
| -
|
| - /**
|
| - * @param {!SDK.ExecutionContext} executionContext
|
| - * @return {boolean}
|
| - */
|
| - _shouldSwitchToContext(executionContext) {
|
| - if (this._lastSelectedContextId && this._lastSelectedContextId === this._contextPersistentId(executionContext))
|
| - return true;
|
| - if (!this._lastSelectedContextId && this._isDefaultContext(executionContext))
|
| - return true;
|
| - return false;
|
| - }
|
| -
|
| - /**
|
| - * @param {!SDK.ExecutionContext} executionContext
|
| - * @return {boolean}
|
| - */
|
| - _isDefaultContext(executionContext) {
|
| - if (!executionContext.isDefault || !executionContext.frameId)
|
| - return false;
|
| - if (executionContext.target().parentTarget())
|
| - return false;
|
| - var resourceTreeModel = SDK.ResourceTreeModel.fromTarget(executionContext.target());
|
| - var frame = resourceTreeModel && resourceTreeModel.frameForId(executionContext.frameId);
|
| - if (frame && frame.isMainFrame())
|
| - return true;
|
| - return false;
|
| - }
|
| -
|
| - /**
|
| - * @param {!Common.Event} event
|
| - */
|
| - _onExecutionContextCreated(event) {
|
| - this._switchContextIfNecessary(/** @type {!SDK.ExecutionContext} */ (event.data));
|
| - }
|
| -
|
| - /**
|
| - * @param {!Common.Event} event
|
| - */
|
| - _onExecutionContextDestroyed(event) {
|
| - var executionContext = /** @type {!SDK.ExecutionContext}*/ (event.data);
|
| - if (this._context.flavor(SDK.ExecutionContext) === executionContext)
|
| - this._currentExecutionContextGone();
|
| - }
|
| -
|
| - /**
|
| - * @param {!Common.Event} event
|
| - */
|
| - _onExecutionContextOrderChanged(event) {
|
| - var runtimeModel = /** @type {!SDK.RuntimeModel} */ (event.data);
|
| - var executionContexts = runtimeModel.executionContexts();
|
| - for (var i = 0; i < executionContexts.length; i++) {
|
| - if (this._switchContextIfNecessary(executionContexts[i]))
|
| - break;
|
| - }
|
| - }
|
| -
|
| - /**
|
| - * @param {!SDK.ExecutionContext} executionContext
|
| - * @return {boolean}
|
| - */
|
| - _switchContextIfNecessary(executionContext) {
|
| - if (!this._context.flavor(SDK.ExecutionContext) || this._shouldSwitchToContext(executionContext)) {
|
| - this._ignoreContextChanged = true;
|
| - this._context.setFlavor(SDK.ExecutionContext, executionContext);
|
| - this._ignoreContextChanged = false;
|
| - return true;
|
| - }
|
| - return false;
|
| - }
|
| -
|
| - _currentExecutionContextGone() {
|
| - var targets = this._targetManager.targets(SDK.Target.Capability.JS);
|
| - var newContext = null;
|
| - for (var i = 0; i < targets.length && !newContext; ++i) {
|
| - var executionContexts = targets[i].runtimeModel.executionContexts();
|
| - for (var executionContext of executionContexts) {
|
| - if (this._isDefaultContext(executionContext)) {
|
| - newContext = executionContext;
|
| - break;
|
| - }
|
| - }
|
| - }
|
| - if (!newContext) {
|
| - for (var i = 0; i < targets.length && !newContext; ++i) {
|
| - var executionContexts = targets[i].runtimeModel.executionContexts();
|
| - if (executionContexts.length) {
|
| - newContext = executionContexts[0];
|
| - break;
|
| - }
|
| - }
|
| - }
|
| - this._ignoreContextChanged = true;
|
| - this._context.setFlavor(SDK.ExecutionContext, newContext);
|
| - this._ignoreContextChanged = false;
|
| - }
|
| -};
|
|
|