OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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_MUS_H_ | 5 #ifndef UI_AURA_MUS_WINDOW_MUS_H_ |
6 #define UI_AURA_MUS_WINDOW_MUS_H_ | 6 #define UI_AURA_MUS_WINDOW_MUS_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "services/ui/public/interfaces/cursor.mojom.h" | 13 #include "services/ui/public/interfaces/cursor.mojom.h" |
14 #include "ui/aura/aura_export.h" | 14 #include "ui/aura/aura_export.h" |
15 #include "ui/aura/mus/mus_types.h" | 15 #include "ui/aura/mus/mus_types.h" |
16 | 16 |
| 17 namespace cc { |
| 18 class SurfaceInfo; |
| 19 } |
| 20 |
17 namespace gfx { | 21 namespace gfx { |
18 class Rect; | 22 class Rect; |
19 } | 23 } |
20 | 24 |
21 namespace ui { | 25 namespace ui { |
22 namespace mojom { | 26 namespace mojom { |
23 enum class OrderDirection; | 27 enum class OrderDirection; |
24 } | 28 } |
25 } | 29 } |
26 | 30 |
27 namespace aura { | 31 namespace aura { |
28 | 32 |
29 struct SurfaceInfo; | |
30 class Window; | 33 class Window; |
31 class WindowTreeClient; | 34 class WindowTreeClient; |
32 | 35 |
33 // See PrepareForServerBoundsChange() for details on this. | 36 // See PrepareForServerBoundsChange() for details on this. |
34 struct AURA_EXPORT WindowMusChangeData { | 37 struct AURA_EXPORT WindowMusChangeData { |
35 virtual ~WindowMusChangeData() {} | 38 virtual ~WindowMusChangeData() {} |
36 }; | 39 }; |
37 | 40 |
38 // WindowMus defines the interface used by WindowTreeClient to modify | 41 // WindowMus defines the interface used by WindowTreeClient to modify |
39 // the underlying Window. It's defined as a separate interface to make it clear | 42 // the underlying Window. It's defined as a separate interface to make it clear |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 virtual void RemoveChildFromServer(WindowMus* child) = 0; | 75 virtual void RemoveChildFromServer(WindowMus* child) = 0; |
73 virtual void ReorderFromServer(WindowMus* child, | 76 virtual void ReorderFromServer(WindowMus* child, |
74 WindowMus* relative, | 77 WindowMus* relative, |
75 ui::mojom::OrderDirection) = 0; | 78 ui::mojom::OrderDirection) = 0; |
76 virtual void SetBoundsFromServer(const gfx::Rect& bounds) = 0; | 79 virtual void SetBoundsFromServer(const gfx::Rect& bounds) = 0; |
77 virtual void SetVisibleFromServer(bool visible) = 0; | 80 virtual void SetVisibleFromServer(bool visible) = 0; |
78 virtual void SetOpacityFromServer(float opacity) = 0; | 81 virtual void SetOpacityFromServer(float opacity) = 0; |
79 virtual void SetPredefinedCursorFromServer(ui::mojom::Cursor cursor) = 0; | 82 virtual void SetPredefinedCursorFromServer(ui::mojom::Cursor cursor) = 0; |
80 virtual void SetPropertyFromServer(const std::string& property_name, | 83 virtual void SetPropertyFromServer(const std::string& property_name, |
81 const std::vector<uint8_t>* data) = 0; | 84 const std::vector<uint8_t>* data) = 0; |
82 virtual void SetSurfaceIdFromServer( | 85 virtual void SetSurfaceInfoFromServer( |
83 std::unique_ptr<SurfaceInfo> surface_info) = 0; | 86 const cc::SurfaceInfo& surface_info) = 0; |
84 // The window was deleted on the server side. DestroyFromServer() should | 87 // The window was deleted on the server side. DestroyFromServer() should |
85 // result in deleting |this|. | 88 // result in deleting |this|. |
86 virtual void DestroyFromServer() = 0; | 89 virtual void DestroyFromServer() = 0; |
87 virtual void AddTransientChildFromServer(WindowMus* child) = 0; | 90 virtual void AddTransientChildFromServer(WindowMus* child) = 0; |
88 virtual void RemoveTransientChildFromServer(WindowMus* child) = 0; | 91 virtual void RemoveTransientChildFromServer(WindowMus* child) = 0; |
89 // Called when a window was added/removed as a transient child. | 92 // Called when a window was added/removed as a transient child. |
90 virtual ChangeSource OnTransientChildAdded(WindowMus* child) = 0; | 93 virtual ChangeSource OnTransientChildAdded(WindowMus* child) = 0; |
91 virtual ChangeSource OnTransientChildRemoved(WindowMus* child) = 0; | 94 virtual ChangeSource OnTransientChildRemoved(WindowMus* child) = 0; |
92 | 95 |
93 // Called in the rare case when WindowTreeClient needs to change state and | 96 // Called in the rare case when WindowTreeClient needs to change state and |
(...skipping 24 matching lines...) Expand all Loading... |
118 | 121 |
119 void set_server_id(Id id) { server_id_ = id; } | 122 void set_server_id(Id id) { server_id_ = id; } |
120 | 123 |
121 Id server_id_ = kInvalidServerId; | 124 Id server_id_ = kInvalidServerId; |
122 const WindowMusType window_mus_type_; | 125 const WindowMusType window_mus_type_; |
123 }; | 126 }; |
124 | 127 |
125 } // namespace aura | 128 } // namespace aura |
126 | 129 |
127 #endif // UI_AURA_MUS_WINDOW_MUS_H_ | 130 #endif // UI_AURA_MUS_WINDOW_MUS_H_ |
OLD | NEW |