Chromium Code Reviews| Index: chrome/renderer/resources/extensions/media_router_bindings.js |
| diff --git a/chrome/renderer/resources/extensions/media_router_bindings.js b/chrome/renderer/resources/extensions/media_router_bindings.js |
| index 24b7f15ee546108c383b49a429d2cc5b32a6b5bc..51d97a16e9b5c30cf78ab7ce9cb753d2102ee302 100644 |
| --- a/chrome/renderer/resources/extensions/media_router_bindings.js |
| +++ b/chrome/renderer/resources/extensions/media_router_bindings.js |
| @@ -919,40 +919,33 @@ define('media_router_bindings', [ |
| /** |
| * Creates a controller for the given route and binds the given |
| - * InterfaceRequest to it. |
| + * InterfaceRequest to it, and registers an observer for media status updates |
| + * for the route. |
| * @param {string} routeId |
| * @param {!bindings.InterfaceRequest} controllerRequest |
| + * @param {!mediaStatusMojom.MediaStatusObserverPtr} observer |
| * @return {!Promise<!{success: boolean}>} Resolves to true if a controller |
| * is created. Resolves to false if a controller cannot be created, or if |
| * the controller is already bound. |
| */ |
| MediaRouteProvider.prototype.createMediaRouteController = function( |
| - routeId, controllerRequest) { |
| + routeId, controllerRequest, observer) { |
| // TODO(imcheng): Remove this check when M59 is in stable. |
|
imcheng
2017/04/21 21:25:15
s/59/60
takumif
2017/04/21 23:01:11
Done.
|
| - if (!this.handlers_.createMediaRouteController) { |
| + if (!this.handlers_.createMediaRouteController || |
|
imcheng
2017/04/21 21:25:15
It probably makes sense to use a combined API in t
takumif
2017/04/21 23:01:11
Done.
|
| + !this.handlers_.setMediaRouteStatusObserver) { |
| return Promise.resolve({success: false}); |
| } |
| this.handlers_.onBeforeInvokeHandler(); |
| - this.handlers_.createMediaRouteController(routeId, controllerRequest) |
| - .then(controller => {success: true}, |
| - e => {success: false}); |
| - } |
| - |
| - /** |
| - * Sets the MediaStatus oberver for a given route. MediaStatus updates are |
| - * notified via the given observer interface. |
| - * @param {string} routeId |
| - * @param {!mediaStatusMojom.MediaStatusObserverPtr} observer |
| - */ |
| - MediaRouteProvider.prototype.setMediaRouteStatusObserver = function( |
| - routeId, observer) { |
| - // TODO(imcheng): Remove this check when M59 is in stable. |
| - if (!this.handlers_.setMediaRouteStatusObserver) { |
| - return; |
| - } |
| - this.handlers_.onBeforeInvokeHandler(); |
| - this.handlers_.setMediaRouteStatusObserver(routeId, observer); |
| + const result = |
| + this.handlers_.createMediaRouteController(routeId, controllerRequest) |
| + .then(controller => { |
| + this.handlers_.setMediaRouteStatusObserver(routeId, |
| + observer); |
| + return {success: true}; |
| + }, |
| + e => {success: false}); |
| + return result; |
| }; |
| mediaRouter = new MediaRouter(new mediaRouterMojom.MediaRouterPtr( |