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 #ifndef MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ | 5 #ifndef MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ |
6 #define MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ | 6 #define MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ |
7 | 7 |
8 #include "mojo/public/cpp/application/interface_factory.h" | 8 #include "mojo/public/cpp/application/interface_factory.h" |
9 #include "mojo/services/public/interfaces/view_manager/view_manager.mojom.h" | 9 #include "mojo/services/public/interfaces/view_manager/view_manager.mojom.h" |
10 | 10 |
11 namespace mojo { | 11 namespace mojo { |
12 | 12 |
13 class ViewManagerDelegate; | 13 class ViewManagerDelegate; |
| 14 class Shell; |
14 | 15 |
15 // Add an instance of this class to an incoming connection to allow it to | 16 // Add an instance of this class to an incoming connection to allow it to |
16 // instantiate ViewManagerClient implementations in response to | 17 // instantiate ViewManagerClient implementations in response to |
17 // ViewManagerClient requests. | 18 // ViewManagerClient requests. |
18 class ViewManagerClientFactory : public InterfaceFactory<ViewManagerClient> { | 19 class ViewManagerClientFactory : public InterfaceFactory<ViewManagerClient> { |
19 public: | 20 public: |
20 explicit ViewManagerClientFactory(ViewManagerDelegate* delegate); | 21 ViewManagerClientFactory(Shell* shell, ViewManagerDelegate* delegate); |
21 virtual ~ViewManagerClientFactory(); | 22 virtual ~ViewManagerClientFactory(); |
22 | 23 |
23 // InterfaceFactory<ViewManagerClient> implementation. | 24 // InterfaceFactory<ViewManagerClient> implementation. |
24 virtual void Create(ApplicationConnection* connection, | 25 virtual void Create(ApplicationConnection* connection, |
25 InterfaceRequest<ViewManagerClient> request) | 26 InterfaceRequest<ViewManagerClient> request) |
26 MOJO_OVERRIDE; | 27 MOJO_OVERRIDE; |
27 | 28 |
28 private: | 29 private: |
| 30 Shell* shell_; |
29 ViewManagerDelegate* delegate_; | 31 ViewManagerDelegate* delegate_; |
30 }; | 32 }; |
31 | 33 |
32 } // namespace mojo | 34 } // namespace mojo |
33 | 35 |
34 #endif // MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ | 36 #endif // MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_MANAGER_CLIENT_FACTORY_H_ |
OLD | NEW |