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_LAYOUT_MANAGER_H_ | 5 #ifndef ASH_COMMON_WM_LAYOUT_MANAGER_H_ |
6 #define ASH_COMMON_WM_WM_LAYOUT_MANAGER_H_ | 6 #define ASH_COMMON_WM_LAYOUT_MANAGER_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 | 9 |
10 namespace gfx { | 10 namespace gfx { |
11 class Rect; | 11 class Rect; |
12 } | 12 } |
13 | 13 |
14 namespace ash { | 14 namespace ash { |
15 namespace wm { | |
16 | 15 |
17 class WmWindow; | 16 class WmWindow; |
18 | 17 |
19 // Used to position the child WmWindows of a WmWindow. WmLayoutManager is called | 18 // Used to position the child WmWindows of a WmWindow. WmLayoutManager is called |
20 // at key points in a WmWindows life cycle thats allow sthe WmLayoutManager to | 19 // at key points in a WmWindows life cycle thats allow sthe WmLayoutManager to |
21 // position or change child WmWindows. | 20 // position or change child WmWindows. |
22 class ASH_EXPORT WmLayoutManager { | 21 class ASH_EXPORT WmLayoutManager { |
23 public: | 22 public: |
24 virtual ~WmLayoutManager() {} | 23 virtual ~WmLayoutManager() {} |
25 | 24 |
(...skipping 18 matching lines...) Expand all Loading... |
44 bool visibile) = 0; | 43 bool visibile) = 0; |
45 | 44 |
46 // Invoked when WmWindow::SetBounds() is called on |child|. This allows the | 45 // Invoked when WmWindow::SetBounds() is called on |child|. This allows the |
47 // WmLayoutManager to modify the bounds as appropriate before processing the | 46 // WmLayoutManager to modify the bounds as appropriate before processing the |
48 // request, including ignoring the request. Implementation must call | 47 // request, including ignoring the request. Implementation must call |
49 // SetChildBoundsDirect() so that an infinite loop does not result. | 48 // SetChildBoundsDirect() so that an infinite loop does not result. |
50 virtual void SetChildBounds(WmWindow* child, | 49 virtual void SetChildBounds(WmWindow* child, |
51 const gfx::Rect& requested_bounds) = 0; | 50 const gfx::Rect& requested_bounds) = 0; |
52 }; | 51 }; |
53 | 52 |
54 } // namespace wm | |
55 } // namespace ash | 53 } // namespace ash |
56 | 54 |
57 #endif // ASH_COMMON_WM_WM_LAYOUT_MANAGER_H_ | 55 #endif // ASH_COMMON_WM_LAYOUT_MANAGER_H_ |
OLD | NEW |