| Index: remoting/webapp/js_proto/chrome_cast_proto.js
|
| diff --git a/remoting/webapp/js_proto/chrome_cast_proto.js b/remoting/webapp/js_proto/chrome_cast_proto.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..58fa914aa6e64fa66842b5e9966ea0f4ef358748
|
| --- /dev/null
|
| +++ b/remoting/webapp/js_proto/chrome_cast_proto.js
|
| @@ -0,0 +1,129 @@
|
| +// Copyright 2015 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.
|
| +
|
| +// This file contains various hacks needed to inform JSCompiler of various
|
| +// WebKit- and Chrome-specific properties and methods. It is used only with
|
| +// JSCompiler to verify the type-correctness of our code.
|
| +
|
| +/** @type {Object} */
|
| +chrome.cast = {};
|
| +
|
| +/** @constructor */
|
| +chrome.cast.AutoJoinPolicy = function() {};
|
| +
|
| +/** @type {chrome.cast.AutoJoinPolicy} */
|
| +chrome.cast.AutoJoinPolicy.PAGE_SCOPED;
|
| +
|
| +/** @type {chrome.cast.AutoJoinPolicy} */
|
| +chrome.cast.AutoJoinPolicy.ORIGIN_SCOPED;
|
| +
|
| +/** @type {chrome.cast.AutoJoinPolicy} */
|
| +chrome.cast.AutoJoinPolicy.TAB_AND_ORIGIN_SCOPED;
|
| +
|
| +/** @constructor */
|
| +chrome.cast.DefaultActionPolicy = function() {};
|
| +
|
| +/** @type {chrome.cast.DefaultActionPolicy} */
|
| +chrome.cast.DefaultActionPolicy.CAST_THIS_TAB;
|
| +
|
| +/** @type {chrome.cast.DefaultActionPolicy} */
|
| +chrome.cast.DefaultActionPolicy.CREATE_SESSION;
|
| +
|
| +/** @constructor */
|
| +chrome.cast.Error = function() {};
|
| +
|
| +/** @constructor */
|
| +chrome.cast.ReceiverAvailability = function() {};
|
| +
|
| +/** @type {chrome.cast.ReceiverAvailability} */
|
| +chrome.cast.ReceiverAvailability.AVAILABLE;
|
| +
|
| +/** @type {chrome.cast.ReceiverAvailability} */
|
| +chrome.cast.ReceiverAvailability.UNAVAILABLE;
|
| +
|
| +/** @type {Object} */
|
| +chrome.cast.media = {};
|
| +
|
| +/** @constructor */
|
| +chrome.cast.media.Media = function() {
|
| + /** @type {number} */
|
| + this.mediaSessionId = 0;
|
| +};
|
| +
|
| +/** @constructor */
|
| +chrome.cast.Session = function() {
|
| + /** @type {Array<chrome.cast.media.Media>} */
|
| + this.media = [];
|
| +
|
| + /** @type {string} */
|
| + this.sessionId = '';
|
| +};
|
| +
|
| +/**
|
| + * @param {string} namespace
|
| + * @param {Object} message
|
| + * @param {function():void} successCallback
|
| + * @param {function(chrome.cast.Error):void} errorCallback
|
| + */
|
| +chrome.cast.Session.prototype.sendMessage =
|
| + function(namespace, message, successCallback, errorCallback) {};
|
| +
|
| +/**
|
| + * @param {function(chrome.cast.media.Media):void} listener
|
| + */
|
| +chrome.cast.Session.prototype.addMediaListener = function(listener) {};
|
| +
|
| +/**
|
| + * @param {function(boolean):void} listener
|
| + */
|
| +chrome.cast.Session.prototype.addUpdateListener = function(listener) {};
|
| +
|
| +/**
|
| + * @param {string} namespace
|
| + * @param {function(string, string):void} listener
|
| + */
|
| +chrome.cast.Session.prototype.addMessageListener =
|
| + function(namespace, listener){};
|
| +
|
| +/**
|
| + * @param {function():void} successCallback
|
| + * @param {function(chrome.cast.Error):void} errorCallback
|
| + */
|
| +chrome.cast.Session.prototype.stop =
|
| + function(successCallback, errorCallback) {};
|
| +
|
| +/**
|
| + * @constructor
|
| + * @param {string} applicationID
|
| + */
|
| +chrome.cast.SessionRequest = function(applicationID) {};
|
| +
|
| +/**
|
| + * @constructor
|
| + * @param {chrome.cast.SessionRequest} sessionRequest
|
| + * @param {function(chrome.cast.Session):void} sessionListener
|
| + * @param {function(chrome.cast.ReceiverAvailability):void} receiverListener
|
| + * @param {chrome.cast.AutoJoinPolicy=} opt_autoJoinPolicy
|
| + * @param {chrome.cast.DefaultActionPolicy=} opt_defaultActionPolicy
|
| + */
|
| +chrome.cast.ApiConfig = function(sessionRequest,
|
| + sessionListener,
|
| + receiverListener,
|
| + opt_autoJoinPolicy,
|
| + opt_defaultActionPolicy) {};
|
| +
|
| +/**
|
| + * @param {chrome.cast.ApiConfig} apiConfig
|
| + * @param {function():void} onInitSuccess
|
| + * @param {function(chrome.cast.Error):void} onInitError
|
| + */
|
| +chrome.cast.initialize =
|
| + function(apiConfig, onInitSuccess, onInitError) {};
|
| +
|
| +/**
|
| + * @param {function(chrome.cast.Session):void} successCallback
|
| + * @param {function(chrome.cast.Error):void} errorCallback
|
| + */
|
| +chrome.cast.requestSession =
|
| + function(successCallback, errorCallback) {};
|
|
|