OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/bind.h" | 6 #include "base/bind.h" |
7 #include "mojo/public/cpp/application/application_delegate.h" | 7 #include "mojo/public/cpp/application/application_delegate.h" |
8 #include "mojo/public/cpp/application/application_impl.h" | 8 #include "mojo/public/cpp/application/application_impl.h" |
| 9 #include "mojo/public/interfaces/application/service_provider.mojom.h" |
9 #include "mojo/services/public/interfaces/view_manager/view_manager.mojom.h" | 10 #include "mojo/services/public/interfaces/view_manager/view_manager.mojom.h" |
10 | 11 |
11 namespace mojo { | 12 namespace mojo { |
12 namespace examples { | 13 namespace examples { |
13 | 14 |
14 // ViewManagerInit is responsible for establishing the initial connection to | 15 // ViewManagerInit is responsible for establishing the initial connection to |
15 // the view manager. When established it loads |mojo_aura_demo|. | 16 // the view manager. When established it loads |mojo_aura_demo|. |
16 class ViewManagerInit : public ApplicationDelegate { | 17 class ViewManagerInit : public ApplicationDelegate { |
17 public: | 18 public: |
18 ViewManagerInit() {} | 19 ViewManagerInit() {} |
19 virtual ~ViewManagerInit() {} | 20 virtual ~ViewManagerInit() {} |
20 | 21 |
21 virtual void Initialize(ApplicationImpl* app) MOJO_OVERRIDE { | 22 virtual void Initialize(ApplicationImpl* app) MOJO_OVERRIDE { |
22 app->ConnectToService("mojo:mojo_view_manager", &view_manager_init_); | 23 app->ConnectToService("mojo:mojo_view_manager", &view_manager_init_); |
23 view_manager_init_->Embed("mojo:mojo_aura_demo", | 24 ServiceProviderPtr sp; |
| 25 view_manager_init_->Embed("mojo:mojo_aura_demo", sp.Pass(), |
24 base::Bind(&ViewManagerInit::DidConnect, | 26 base::Bind(&ViewManagerInit::DidConnect, |
25 base::Unretained(this))); | 27 base::Unretained(this))); |
26 } | 28 } |
27 | 29 |
28 private: | 30 private: |
29 void DidConnect(bool result) { | 31 void DidConnect(bool result) { |
30 DCHECK(result); | 32 DCHECK(result); |
31 VLOG(1) << "ViewManagerInit::DidConnection result=" << result; | 33 VLOG(1) << "ViewManagerInit::DidConnection result=" << result; |
32 } | 34 } |
33 | 35 |
34 ViewManagerInitServicePtr view_manager_init_; | 36 ViewManagerInitServicePtr view_manager_init_; |
35 | 37 |
36 DISALLOW_COPY_AND_ASSIGN(ViewManagerInit); | 38 DISALLOW_COPY_AND_ASSIGN(ViewManagerInit); |
37 }; | 39 }; |
38 | 40 |
39 } // namespace examples | 41 } // namespace examples |
40 | 42 |
41 // static | 43 // static |
42 ApplicationDelegate* ApplicationDelegate::Create() { | 44 ApplicationDelegate* ApplicationDelegate::Create() { |
43 return new examples::ViewManagerInit(); | 45 return new examples::ViewManagerInit(); |
44 } | 46 } |
45 | 47 |
46 } // namespace mojo | 48 } // namespace mojo |
OLD | NEW |