Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(203)

Unified Diff: services/ui/view_manager/view_host_impl.cc

Issue 1679023006: Reify view ownership as a message pipe. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « services/ui/view_manager/view_host_impl.h ('k') | services/ui/view_manager/view_manager_impl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: services/ui/view_manager/view_host_impl.cc
diff --git a/services/ui/view_manager/view_host_impl.cc b/services/ui/view_manager/view_host_impl.cc
index 976644efb8425043cb1de8d6d814a05982280a59..7e32e897a7bca5c43a84ada2f6d1a5ecd7fd7e2d 100644
--- a/services/ui/view_manager/view_host_impl.cc
+++ b/services/ui/view_manager/view_host_impl.cc
@@ -5,20 +5,21 @@
#include "services/ui/view_manager/view_host_impl.h"
#include "base/bind.h"
-#include "base/bind_helpers.h"
+#include "services/ui/view_manager/view_registry.h"
+#include "services/ui/view_manager/view_state.h"
namespace view_manager {
-ViewHostImpl::ViewHostImpl(
- ViewRegistry* registry,
- ViewState* state,
- mojo::InterfaceRequest<mojo::ui::ViewHost> view_host_request)
- : registry_(registry),
- state_(state),
- binding_(this, view_host_request.Pass()) {}
+ViewHostImpl::ViewHostImpl(ViewRegistry* registry, ViewState* state)
+ : registry_(registry), state_(state) {}
ViewHostImpl::~ViewHostImpl() {}
+void ViewHostImpl::GetToken(
+ const mojo::ui::ViewHost::GetTokenCallback& callback) {
+ callback.Run(state_->view_token()->Clone());
+}
+
void ViewHostImpl::GetServiceProvider(
mojo::InterfaceRequest<mojo::ServiceProvider> service_provider_request) {
service_provider_bindings_.AddBinding(this, service_provider_request.Pass());
@@ -34,12 +35,15 @@ void ViewHostImpl::RequestLayout() {
}
void ViewHostImpl::AddChild(uint32_t child_key,
- mojo::ui::ViewTokenPtr child_view_token) {
- registry_->AddChild(state_, child_key, child_view_token.Pass());
+ mojo::ui::ViewOwnerPtr child_view_owner) {
+ registry_->AddChild(state_, child_key, child_view_owner.Pass());
}
-void ViewHostImpl::RemoveChild(uint32_t child_key) {
- registry_->RemoveChild(state_, child_key);
+void ViewHostImpl::RemoveChild(uint32_t child_key,
+ mojo::InterfaceRequest<mojo::ui::ViewOwner>
+ transferred_view_owner_request) {
+ registry_->RemoveChild(state_, child_key,
+ transferred_view_owner_request.Pass());
}
static void RunLayoutChildCallback(
« no previous file with comments | « services/ui/view_manager/view_host_impl.h ('k') | services/ui/view_manager/view_manager_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698