Index: services/view_manager/view_manager_service_impl.cc |
diff --git a/services/view_manager/view_manager_service_impl.cc b/services/view_manager/view_manager_service_impl.cc |
index c55114ac1693d1bb9a93fbfc2e2f1d0ba5d9c52d..2ed0193e8e9d5348a044fb14e62aa94bd2bced24 100644 |
--- a/services/view_manager/view_manager_service_impl.cc |
+++ b/services/view_manager/view_manager_service_impl.cc |
@@ -23,6 +23,7 @@ using mojo::InterfaceRequest; |
using mojo::OrderDirection; |
using mojo::Rect; |
using mojo::ServiceProvider; |
+using mojo::ServiceProviderPtr; |
using mojo::String; |
using mojo::ViewDataPtr; |
@@ -52,9 +53,9 @@ ViewManagerServiceImpl::~ViewManagerServiceImpl() { |
DestroyViews(); |
} |
-void ViewManagerServiceImpl::Init( |
- mojo::ViewManagerClient* client, |
- InterfaceRequest<ServiceProvider> service_provider) { |
+void ViewManagerServiceImpl::Init(mojo::ViewManagerClient* client, |
+ InterfaceRequest<ServiceProvider> services, |
+ ServiceProviderPtr exposed_services) { |
DCHECK(!client_); |
client_ = client; |
std::vector<const ServerView*> to_send; |
@@ -65,7 +66,8 @@ void ViewManagerServiceImpl::Init( |
connection_manager_->wm_internal()->CreateWindowManagerForViewManagerClient( |
id_, pipe.handle1.Pass()); |
client->OnEmbed(id_, creator_url_, ViewToViewData(to_send.front()), |
- service_provider.Pass(), pipe.handle0.Pass()); |
+ services.Pass(), exposed_services.Pass(), |
+ pipe.handle0.Pass()); |
} |
const ServerView* ViewManagerServiceImpl::GetView(const ViewId& id) const { |
@@ -137,10 +139,10 @@ bool ViewManagerServiceImpl::SetViewVisibility(const ViewId& view_id, |
return true; |
} |
-bool ViewManagerServiceImpl::Embed( |
- const std::string& url, |
- const ViewId& view_id, |
- InterfaceRequest<ServiceProvider> service_provider) { |
+bool ViewManagerServiceImpl::Embed(const std::string& url, |
+ const ViewId& view_id, |
+ InterfaceRequest<ServiceProvider> services, |
+ ServiceProviderPtr exposed_services) { |
const ServerView* view = GetView(view_id); |
if (!view || !access_policy_->CanEmbed(view)) |
return false; |
@@ -156,7 +158,8 @@ bool ViewManagerServiceImpl::Embed( |
connection_manager_->OnConnectionMessagedClient(id_); |
existing_owner->RemoveRoot(); |
} |
- connection_manager_->EmbedAtView(id_, url, view_id, service_provider.Pass()); |
+ connection_manager_->EmbedAtView(id_, url, view_id, services.Pass(), |
+ exposed_services.Pass()); |
return true; |
} |
@@ -583,14 +586,14 @@ void ViewManagerServiceImpl::SetViewProperty( |
callback.Run(success); |
} |
-void ViewManagerServiceImpl::Embed( |
- const String& url, |
- Id transport_view_id, |
- InterfaceRequest<ServiceProvider> service_provider, |
- const Callback<void(bool)>& callback) { |
+void ViewManagerServiceImpl::Embed(const String& url, |
+ Id transport_view_id, |
+ InterfaceRequest<ServiceProvider> services, |
+ ServiceProviderPtr exposed_services, |
+ const Callback<void(bool)>& callback) { |
callback.Run(Embed(url.To<std::string>(), |
- ViewIdFromTransportId(transport_view_id), |
- service_provider.Pass())); |
+ ViewIdFromTransportId(transport_view_id), services.Pass(), |
+ exposed_services.Pass())); |
} |
bool ViewManagerServiceImpl::IsRootForAccessPolicy(const ViewId& id) const { |