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 "mojo/shell/view_manager_loader.h" | 5 #include "mojo/shell/view_manager_loader.h" |
6 | 6 |
7 #include "mojo/public/cpp/application/application.h" | 7 #include "mojo/public/cpp/application/application.h" |
8 #include "mojo/services/view_manager/root_node_manager.h" | 8 #include "mojo/services/view_manager/view_manager_init_connection.h" |
9 #include "mojo/services/view_manager/view_manager_connection.h" | |
10 | 9 |
11 namespace mojo { | 10 namespace mojo { |
12 namespace shell { | 11 namespace shell { |
13 | 12 |
14 ViewManagerLoader::ViewManagerLoader() { | 13 ViewManagerLoader::ViewManagerLoader() { |
15 } | 14 } |
16 | 15 |
17 ViewManagerLoader::~ViewManagerLoader() { | 16 ViewManagerLoader::~ViewManagerLoader() { |
18 } | 17 } |
19 | 18 |
20 void ViewManagerLoader::LoadService( | 19 void ViewManagerLoader::LoadService( |
21 ServiceManager* manager, | 20 ServiceManager* manager, |
22 const GURL& url, | 21 const GURL& url, |
23 ScopedMessagePipeHandle service_provider_handle) { | 22 ScopedMessagePipeHandle service_provider_handle) { |
| 23 // TODO(sky): this needs some sort of authentication as well as making sure |
| 24 // we only ever have one active at a time. |
24 scoped_ptr<Application> app(new Application(service_provider_handle.Pass())); | 25 scoped_ptr<Application> app(new Application(service_provider_handle.Pass())); |
25 if (!root_node_manager_.get()) { | 26 app->AddService<view_manager::service::ViewManagerInitConnection>( |
26 root_node_manager_.reset( | 27 app->service_provider()); |
27 new view_manager::service::RootNodeManager(app->service_provider())); | |
28 } | |
29 app->AddService<view_manager::service::ViewManagerConnection>( | |
30 root_node_manager_.get()); | |
31 apps_.push_back(app.release()); | 28 apps_.push_back(app.release()); |
32 } | 29 } |
33 | 30 |
34 void ViewManagerLoader::OnServiceError(ServiceManager* manager, | 31 void ViewManagerLoader::OnServiceError(ServiceManager* manager, |
35 const GURL& url) { | 32 const GURL& url) { |
36 } | 33 } |
37 | 34 |
38 } // namespace shell | 35 } // namespace shell |
39 } // namespace mojo | 36 } // namespace mojo |
OLD | NEW |