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

Unified Diff: mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc

Issue 818583002: Moves Create() off of View and onto ViewManager (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: merge 2 trunk Created 6 years 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
Index: mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc
diff --git a/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc b/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc
index fb3cb9af16ab5644f5ac80baf9bd8536b6d5682c..e210c2bc42882e784369d82cf1c8c9beaf0c037d 100644
--- a/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc
+++ b/mojo/services/view_manager/public/cpp/lib/view_manager_client_impl.cc
@@ -80,8 +80,8 @@ class RootObserver : public ViewObserver {
// Overridden from ViewObserver:
void OnViewDestroyed(View* view) override {
DCHECK_EQ(view, root_);
- static_cast<ViewManagerClientImpl*>(
- ViewPrivate(root_).view_manager())->RootDestroyed(root_);
+ static_cast<ViewManagerClientImpl*>(root_->view_manager())
+ ->RootDestroyed(root_);
view->RemoveObserver(this);
delete this;
}
@@ -129,13 +129,6 @@ ViewManagerClientImpl::~ViewManagerClientImpl() {
delegate_->OnViewManagerDisconnected(this);
}
-Id ViewManagerClientImpl::CreateView() {
- DCHECK(connected_);
- const Id view_id = MakeTransportId(connection_id_, ++next_id_);
- service_->CreateView(view_id, ActionCompletedCallbackWithErrorCode());
- return view_id;
-}
-
void ViewManagerClientImpl::DestroyView(Id view_id) {
DCHECK(connected_);
service_->DeleteView(view_id, ActionCompletedCallback());
@@ -230,6 +223,13 @@ void ViewManagerClientImpl::RemoveView(Id view_id) {
////////////////////////////////////////////////////////////////////////////////
// ViewManagerClientImpl, ViewManager implementation:
+Id ViewManagerClientImpl::CreateViewOnServer() {
+ DCHECK(connected_);
+ const Id view_id = MakeTransportId(connection_id_, ++next_id_);
+ service_->CreateView(view_id, ActionCompletedCallbackWithErrorCode());
+ return view_id;
+}
+
const std::string& ViewManagerClientImpl::GetEmbedderURL() const {
return creator_url_;
}
@@ -247,6 +247,12 @@ View* ViewManagerClientImpl::GetFocusedView() {
return focused_view_;
}
+View* ViewManagerClientImpl::CreateView() {
+ View* view = new View(this, CreateViewOnServer());
+ AddView(view);
+ return view;
+}
+
////////////////////////////////////////////////////////////////////////////////
// ViewManagerClientImpl, ViewManagerClient implementation:

Powered by Google App Engine
This is Rietveld 408576698