Chromium Code Reviews| Index: extensions/renderer/resources/media_router_bindings.js |
| diff --git a/extensions/renderer/resources/media_router_bindings.js b/extensions/renderer/resources/media_router_bindings.js |
| index dd1ffdec7f53143fc6642ab31dd8f13f582eadd9..cfdf6d1ff34efec96b50f78b775dd7a91160c13d 100644 |
| --- a/extensions/renderer/resources/media_router_bindings.js |
| +++ b/extensions/renderer/resources/media_router_bindings.js |
| @@ -545,6 +545,10 @@ define('media_router_bindings', [ |
| * @param {!MediaRouterHandlers} handlers |
| */ |
| MediaRouteProvider.prototype.setHandlers = function(handlers) { |
| + // TODO(mfoltz): Remove when component that supports this method is |
| + // available in canary. |
| + if (!handlers['onBeforeInvokeHandler']) |
| + handlers['onBeforeInvokeHandler'] = () => {}; |
| this.handlers_ = handlers; |
| var requiredHandlers = [ |
| 'stopObservingMediaRoutes', |
| @@ -563,6 +567,7 @@ define('media_router_bindings', [ |
| 'enableMdnsDiscovery', |
| 'updateMediaSinks', |
| 'searchSinks', |
| + 'onBeforeInvokeHandler' |
| ]; |
| requiredHandlers.forEach(function(nextHandler) { |
| if (handlers[nextHandler] === undefined) { |
| @@ -579,6 +584,7 @@ define('media_router_bindings', [ |
| */ |
| MediaRouteProvider.prototype.startObservingMediaSinks = |
| function(sourceUrn) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.startObservingMediaSinks(sourceUrn); |
| }; |
| @@ -588,6 +594,7 @@ define('media_router_bindings', [ |
| */ |
| MediaRouteProvider.prototype.stopObservingMediaSinks = |
| function(sourceUrn) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.stopObservingMediaSinks(sourceUrn); |
| }; |
| @@ -611,7 +618,8 @@ define('media_router_bindings', [ |
| */ |
| MediaRouteProvider.prototype.createRoute = |
| function(sourceUrn, sinkId, presentationId, origin, tabId, |
| - timeout, incognito) { |
| + timeout, incognito) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| return this.handlers_.createRoute( |
| sourceUrn, sinkId, presentationId, origin, tabId, |
| Math.floor(timeout.microseconds / 1000), incognito) |
| @@ -642,6 +650,7 @@ define('media_router_bindings', [ |
| MediaRouteProvider.prototype.joinRoute = |
| function(sourceUrn, presentationId, origin, tabId, timeout, |
| incognito) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| return this.handlers_.joinRoute( |
| sourceUrn, presentationId, origin, tabId, |
| Math.floor(timeout.microseconds / 1000), incognito) |
| @@ -673,6 +682,7 @@ define('media_router_bindings', [ |
| MediaRouteProvider.prototype.connectRouteByRouteId = |
| function(sourceUrn, routeId, presentationId, origin, tabId, |
| timeout, incognito) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| return this.handlers_.connectRouteByRouteId( |
| sourceUrn, routeId, presentationId, origin, tabId, |
| Math.floor(timeout.microseconds / 1000), incognito) |
| @@ -692,6 +702,7 @@ define('media_router_bindings', [ |
| * message and code if the operation failed. |
| */ |
| MediaRouteProvider.prototype.terminateRoute = function(routeId) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| // TODO(crbug.com/627967): Remove code path that doesn't expect a Promise |
| // in M56. |
| var maybePromise = this.handlers_.terminateRoute(routeId); |
| @@ -716,7 +727,8 @@ define('media_router_bindings', [ |
| * or false on failure. |
| */ |
| MediaRouteProvider.prototype.sendRouteMessage = function( |
| - routeId, message) { |
| + routeId, message) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| return this.handlers_.sendRouteMessage(routeId, message) |
| .then(function() { |
| return {'sent': true}; |
| @@ -733,7 +745,8 @@ define('media_router_bindings', [ |
| * or false on failure. |
| */ |
| MediaRouteProvider.prototype.sendRouteBinaryMessage = function( |
| - routeId, data) { |
| + routeId, data) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| return this.handlers_.sendRouteBinaryMessage(routeId, data) |
| .then(function() { |
| return {'sent': true}; |
| @@ -748,6 +761,7 @@ define('media_router_bindings', [ |
| */ |
| MediaRouteProvider.prototype.startListeningForRouteMessages = function( |
| routeId) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| if (this.handlers_.startListeningForRouteMessages) { |
| this.handlers_.startListeningForRouteMessages(routeId); |
| } else { |
| @@ -763,6 +777,7 @@ define('media_router_bindings', [ |
| * @param {!string} routeId |
| */ |
| MediaRouteProvider.prototype.listenForRouteMessagesOld = function(routeId) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.listenForRouteMessages(routeId) |
| .then(function(messages) { |
| // If messages is empty, then stopListeningForRouteMessages has been |
| @@ -783,6 +798,7 @@ define('media_router_bindings', [ |
| */ |
| MediaRouteProvider.prototype.stopListeningForRouteMessages = function( |
| routeId) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.stopListeningForRouteMessages(routeId); |
| }; |
| @@ -802,6 +818,7 @@ define('media_router_bindings', [ |
| * @param {!string} sourceUrn |
| */ |
| MediaRouteProvider.prototype.startObservingMediaRoutes = function(sourceUrn) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.startObservingMediaRoutes(sourceUrn); |
| }; |
| @@ -811,6 +828,7 @@ define('media_router_bindings', [ |
| * @param {!string} sourceUrn |
| */ |
| MediaRouteProvider.prototype.stopObservingMediaRoutes = function(sourceUrn) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.stopObservingMediaRoutes(sourceUrn); |
| }; |
| @@ -818,6 +836,7 @@ define('media_router_bindings', [ |
| * Enables mDNS device discovery. |
| */ |
| MediaRouteProvider.prototype.enableMdnsDiscovery = function() { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.enableMdnsDiscovery(); |
| }; |
| @@ -826,6 +845,7 @@ define('media_router_bindings', [ |
| * @param {!string} sourceUrn |
| */ |
| MediaRouteProvider.prototype.updateMediaSinks = function(sourceUrn) { |
| + this.handlers_.onBeforeInvokeHandler(); |
| this.handlers_.updateMediaSinks(sourceUrn); |
| }; |
| @@ -844,12 +864,13 @@ define('media_router_bindings', [ |
| * creation, or the empty string if no route can be immediately created. |
| */ |
| MediaRouteProvider.prototype.searchSinks = function( |
| - sinkId, sourceUrn, searchCriteria) { |
| + sinkId, sourceUrn, searchCriteria) { |
|
imcheng
2016/10/20 17:56:35
nit: revert this line?
mark a. foltz
2016/10/24 17:32:03
Done.
|
| // TODO(btolsch): Remove this check when we no longer expect old extensions |
| // to be missing this API. |
| if (!this.handlers_.searchSinks) { |
| return Promise.resolve({'sink_id': ''}); |
| } |
| + this.handlers_.onBeforeInvokeHandler(); |
| return Promise.resolve({ |
| 'sink_id': this.handlers_.searchSinks(sinkId, sourceUrn, searchCriteria) |
| }); |
| @@ -861,4 +882,3 @@ define('media_router_bindings', [ |
| return mediaRouter; |
| }); |
| - |