| Index: third_party/WebKit/Source/devtools/front_end/screencast/ScreencastApp.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/screencast/ScreencastApp.js b/third_party/WebKit/Source/devtools/front_end/screencast/ScreencastApp.js
|
| index 61c91c9c091379fbb08045f6fa1f5f9ca77ab33d..7e844f7555ab4a38eb686a8e51a45c006a032946 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/screencast/ScreencastApp.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/screencast/ScreencastApp.js
|
| @@ -3,7 +3,7 @@
|
| // found in the LICENSE file.
|
| /**
|
| * @implements {Common.App}
|
| - * @implements {SDK.TargetManager.Observer}
|
| + * @implements {SDK.SDKModelObserver<!SDK.ScreenCaptureModel>}
|
| * @unrestricted
|
| */
|
| Screencast.ScreencastApp = class {
|
| @@ -11,8 +11,9 @@ Screencast.ScreencastApp = class {
|
| this._enabledSetting = Common.settings.createSetting('screencastEnabled', true);
|
| this._toggleButton = new UI.ToolbarToggle(Common.UIString('Toggle screencast'), 'largeicon-phone');
|
| this._toggleButton.setToggled(this._enabledSetting.get());
|
| + this._toggleButton.setEnabled(false);
|
| this._toggleButton.addEventListener(UI.ToolbarButton.Events.Click, this._toggleButtonClicked, this);
|
| - SDK.targetManager.observeTargets(this);
|
| + SDK.targetManager.observeModels(SDK.ScreenCaptureModel, this);
|
| }
|
|
|
| /**
|
| @@ -44,38 +45,31 @@ Screencast.ScreencastApp = class {
|
|
|
| /**
|
| * @override
|
| - * @param {!SDK.Target} target
|
| + * @param {!SDK.ScreenCaptureModel} screenCaptureModel
|
| */
|
| - targetAdded(target) {
|
| - if (this._target)
|
| + modelAdded(screenCaptureModel) {
|
| + if (this._screenCaptureModel)
|
| return;
|
| - this._target = target;
|
| -
|
| - var resourceTreeModel = SDK.ResourceTreeModel.fromTarget(target);
|
| - if (resourceTreeModel) {
|
| - this._screencastView = new Screencast.ScreencastView(target, resourceTreeModel);
|
| - this._rootSplitWidget.setMainWidget(this._screencastView);
|
| - this._screencastView.initialize();
|
| - } else {
|
| - this._toggleButton.setEnabled(false);
|
| - }
|
| + this._screenCaptureModel = screenCaptureModel;
|
| + this._toggleButton.setEnabled(true);
|
| + this._screencastView = new Screencast.ScreencastView(screenCaptureModel);
|
| + this._rootSplitWidget.setMainWidget(this._screencastView);
|
| + this._screencastView.initialize();
|
| this._onScreencastEnabledChanged();
|
| }
|
|
|
| /**
|
| * @override
|
| - * @param {!SDK.Target} target
|
| + * @param {!SDK.ScreenCaptureModel} screenCaptureModel
|
| */
|
| - targetRemoved(target) {
|
| - if (this._target === target) {
|
| - delete this._target;
|
| - if (!this._screencastView)
|
| - return;
|
| - this._toggleButton.setEnabled(false);
|
| - this._screencastView.detach();
|
| - delete this._screencastView;
|
| - this._onScreencastEnabledChanged();
|
| - }
|
| + modelRemoved(screenCaptureModel) {
|
| + if (this._screenCaptureModel !== screenCaptureModel)
|
| + return;
|
| + delete this._screenCaptureModel;
|
| + this._toggleButton.setEnabled(false);
|
| + this._screencastView.detach();
|
| + delete this._screencastView;
|
| + this._onScreencastEnabledChanged();
|
| }
|
|
|
| _toggleButtonClicked() {
|
|
|