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 ASH_COMMON_WM_WM_WINDOW_OBSERVER_H_ | 5 #ifndef ASH_COMMON_WM_WINDOW_OBSERVER_H_ |
6 #define ASH_COMMON_WM_WM_WINDOW_OBSERVER_H_ | 6 #define ASH_COMMON_WM_WINDOW_OBSERVER_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include "ash/ash_export.h" | 10 #include "ash/ash_export.h" |
11 | 11 |
12 namespace gfx { | 12 namespace gfx { |
13 class Rect; | 13 class Rect; |
14 } | 14 } |
15 | 15 |
16 namespace ash { | 16 namespace ash { |
17 namespace wm { | |
18 | 17 |
19 class WmWindow; | 18 class WmWindow; |
20 enum class WmWindowProperty; | 19 enum class WmWindowProperty; |
21 | 20 |
22 class ASH_EXPORT WmWindowObserver { | 21 class ASH_EXPORT WmWindowObserver { |
23 public: | 22 public: |
24 struct TreeChangeParams { | 23 struct TreeChangeParams { |
25 WmWindow* target = nullptr; | 24 WmWindow* target = nullptr; |
26 WmWindow* old_parent = nullptr; | 25 WmWindow* old_parent = nullptr; |
27 WmWindow* new_parent = nullptr; | 26 WmWindow* new_parent = nullptr; |
28 }; | 27 }; |
29 | 28 |
30 // |window| is the window the observer was added to, which is not necessarily | 29 // |window| is the window the observer was added to, which is not necessarily |
31 // the window that was added/removed. | 30 // the window that was added/removed. |
32 virtual void OnWindowTreeChanged(WmWindow* window, | 31 virtual void OnWindowTreeChanged(WmWindow* window, |
33 const TreeChangeParams& params) {} | 32 const TreeChangeParams& params) {} |
34 | 33 |
35 virtual void OnWindowPropertyChanged(WmWindow* window, | 34 virtual void OnWindowPropertyChanged(WmWindow* window, |
36 WmWindowProperty property) {} | 35 WmWindowProperty property) {} |
37 | 36 |
38 virtual void OnWindowStackingChanged(WmWindow* window) {} | 37 virtual void OnWindowStackingChanged(WmWindow* window) {} |
39 | 38 |
40 virtual void OnWindowDestroying(WmWindow* window) {} | 39 virtual void OnWindowDestroying(WmWindow* window) {} |
41 | 40 |
42 virtual void OnWindowBoundsChanged(WmWindow* window, | 41 virtual void OnWindowBoundsChanged(WmWindow* window, |
43 const gfx::Rect& old_bounds, | 42 const gfx::Rect& old_bounds, |
44 const gfx::Rect& new_bounds) {} | 43 const gfx::Rect& new_bounds) {} |
45 | 44 |
46 virtual void OnWindowVisibilityChanging(wm::WmWindow* window, bool visible) {} | 45 virtual void OnWindowVisibilityChanging(WmWindow* window, bool visible) {} |
47 | 46 |
48 virtual void OnWindowTitleChanged(wm::WmWindow* window) {} | 47 virtual void OnWindowTitleChanged(WmWindow* window) {} |
49 | 48 |
50 protected: | 49 protected: |
51 virtual ~WmWindowObserver() {} | 50 virtual ~WmWindowObserver() {} |
52 }; | 51 }; |
53 | 52 |
54 } // namespace wm | |
55 } // namespace ash | 53 } // namespace ash |
56 | 54 |
57 #endif // ASH_COMMON_WM_WM_WINDOW_OBSERVER_H_ | 55 #endif // ASH_COMMON_WM_WINDOW_OBSERVER_H_ |
OLD | NEW |