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; |
}); |
- |