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 UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ | 5 #ifndef UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ |
6 #define UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ | 6 #define UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "services/service_manager/public/interfaces/interface_provider.mojom.h" | 11 #include "services/service_manager/public/interfaces/interface_provider.mojom.h" |
12 #include "services/ui/public/interfaces/window_tree.mojom.h" | 12 #include "services/ui/public/interfaces/window_tree.mojom.h" |
13 #include "ui/aura/aura_export.h" | 13 #include "ui/aura/aura_export.h" |
14 | 14 |
15 namespace aura { | 15 namespace aura { |
16 | 16 |
17 class PropertyConverter; | 17 class PropertyConverter; |
18 class Window; | 18 class Window; |
19 class WindowTreeClient; | 19 class WindowTreeClient; |
20 class WindowTreeHostMus; | 20 class WindowTreeHostMus; |
21 | 21 |
22 // Interface implemented by an application using mus. | 22 // Interface implemented by an application using mus. |
23 class AURA_EXPORT WindowTreeClientDelegate { | 23 class AURA_EXPORT WindowTreeClientDelegate { |
24 public: | 24 public: |
25 // Called when the application implementing this interface is embedded. | 25 // Called when the application implementing this interface is embedded. |
26 // NOTE: this is only invoked if the WindowTreeClient is created with an | 26 // NOTE: this is only invoked if the WindowTreeClient is created with an |
27 // InterfaceRequest. | 27 // InterfaceRequest. |
28 virtual void OnEmbed(std::unique_ptr<WindowTreeHostMus> window_tree_host) = 0; | 28 virtual void OnEmbed(std::unique_ptr<WindowTreeHostMus> window_tree_host) = 0; |
29 | 29 |
| 30 // Called when the application implementing this interface is embedded and |
| 31 // uses external window mode. |
| 32 virtual void OnEmbedRootReady(WindowTreeHostMus* window_tree_host); |
| 33 |
30 // Sent when another app is embedded in |root| (one of the roots of the | 34 // Sent when another app is embedded in |root| (one of the roots of the |
31 // connection). Afer this call |root| is deleted. If the associated | 35 // connection). Afer this call |root| is deleted. If the associated |
32 // WindowTreeClient was created from a WindowTreeClientRequest then | 36 // WindowTreeClient was created from a WindowTreeClientRequest then |
33 // OnEmbedRootDestroyed() is called after the window is deleted. | 37 // OnEmbedRootDestroyed() is called after the window is deleted. |
34 virtual void OnUnembed(Window* root); | 38 virtual void OnUnembed(Window* root); |
35 | 39 |
36 // Called when the embed root has been destroyed on the server side (or | 40 // Called when the embed root has been destroyed on the server side (or |
37 // another client was embedded in the same window). This is called in two | 41 // another client was embedded in the same window). This is called in two |
38 // distinct cases: | 42 // distinct cases: |
39 // . If the WindowTreeClient was created from an InterfaceRequest. In this | 43 // . If the WindowTreeClient was created from an InterfaceRequest. In this |
(...skipping 20 matching lines...) Expand all Loading... |
60 | 64 |
61 virtual PropertyConverter* GetPropertyConverter() = 0; | 65 virtual PropertyConverter* GetPropertyConverter() = 0; |
62 | 66 |
63 protected: | 67 protected: |
64 virtual ~WindowTreeClientDelegate() {} | 68 virtual ~WindowTreeClientDelegate() {} |
65 }; | 69 }; |
66 | 70 |
67 } // namespace aura | 71 } // namespace aura |
68 | 72 |
69 #endif // UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ | 73 #endif // UI_AURA_MUS_WINDOW_TREE_CLIENT_DELEGATE_H_ |
OLD | NEW |