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

Unified Diff: mojo/examples/window_manager/window_manager.cc

Issue 316083002: Add support for multiple roots to the client lib. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 6 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
Index: mojo/examples/window_manager/window_manager.cc
diff --git a/mojo/examples/window_manager/window_manager.cc b/mojo/examples/window_manager/window_manager.cc
index e3e88ac08e698b4fa0f8f09e54d768dbac934c47..e43fa0896a565fcc189b2b389f3029fd40bb16d2 100644
--- a/mojo/examples/window_manager/window_manager.cc
+++ b/mojo/examples/window_manager/window_manager.cc
@@ -3,6 +3,7 @@
// found in the LICENSE file.
#include "base/basictypes.h"
+#include "base/bind.h"
#include "mojo/public/cpp/application/application.h"
#include "mojo/services/public/cpp/view_manager/view.h"
#include "mojo/services/public/cpp/view_manager/view_manager.h"
@@ -19,10 +20,11 @@ class WindowManager : public Application {
private:
// Overridden from Application:
virtual void Initialize() MOJO_OVERRIDE {
- view_manager_ = view_manager::ViewManager::CreateBlocking(this);
+ view_manager_ = view_manager::ViewManager::CreateBlocking(this,
+ base::Bind(&WindowManager::OnRootAdded, base::Unretained(this)));
view_manager::ViewTreeNode* node =
view_manager::ViewTreeNode::Create(view_manager_);
- view_manager_->tree()->AddChild(node);
+ view_manager_->roots().front()->AddChild(node);
node->SetBounds(gfx::Rect(800, 600));
view_manager::View* view = view_manager::View::Create(view_manager_);
@@ -33,9 +35,17 @@ class WindowManager : public Application {
view_manager::ViewTreeNode::Create(view_manager_);
node->AddChild(embedded);
embedded->SetBounds(gfx::Rect(50, 50, 200, 200));
- view_manager_->Embed("mojo:mojo_embedded_app", embedded);
+ embedded->Embed("mojo:mojo_embedded_app");
+
+ view_manager::ViewTreeNode* embedded2 =
+ view_manager::ViewTreeNode::Create(view_manager_);
+ node->AddChild(embedded2);
+ embedded2->SetBounds(gfx::Rect(250, 250, 200, 200));
+ embedded2->Embed("mojo:mojo_embedded_app");
}
+ void OnRootAdded(view_manager::ViewManager* view_manager) {}
+
view_manager::ViewManager* view_manager_;
DISALLOW_COPY_AND_ASSIGN(WindowManager);

Powered by Google App Engine
This is Rietveld 408576698