OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ | 5 #ifndef ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ |
6 #define ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ | 6 #define ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 #include "ash/shelf/shelf_layout_manager_observer.h" | 9 #include "ash/shelf/shelf_layout_manager_observer.h" |
10 #include "ash/shell_observer.h" | 10 #include "ash/shell_observer.h" |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 virtual void SetChildBounds(aura::Window* child, | 96 virtual void SetChildBounds(aura::Window* child, |
97 const gfx::Rect& requested_bounds) OVERRIDE; | 97 const gfx::Rect& requested_bounds) OVERRIDE; |
98 | 98 |
99 // ash::ShellObserver: | 99 // ash::ShellObserver: |
100 virtual void OnShelfAlignmentChanged(aura::RootWindow* root_window) OVERRIDE; | 100 virtual void OnShelfAlignmentChanged(aura::RootWindow* root_window) OVERRIDE; |
101 | 101 |
102 // aura::WindowObserver: | 102 // aura::WindowObserver: |
103 virtual void OnWindowPropertyChanged(aura::Window* window, | 103 virtual void OnWindowPropertyChanged(aura::Window* window, |
104 const void* key, | 104 const void* key, |
105 intptr_t old) OVERRIDE; | 105 intptr_t old) OVERRIDE; |
| 106 virtual void OnWindowBoundsChanged(aura::Window* window, |
| 107 const gfx::Rect& old_bounds, |
| 108 const gfx::Rect& new_bounds) OVERRIDE; |
| 109 virtual void OnWindowDestroying(aura::Window* window) OVERRIDE; |
106 | 110 |
107 // aura::client::ActivationChangeObserver: | 111 // aura::client::ActivationChangeObserver: |
108 virtual void OnWindowActivated(aura::Window* gained_active, | 112 virtual void OnWindowActivated(aura::Window* gained_active, |
109 aura::Window* lost_active) OVERRIDE; | 113 aura::Window* lost_active) OVERRIDE; |
110 | 114 |
111 // ShelfLayoutManagerObserver: | 115 // ShelfLayoutManagerObserver: |
112 virtual void WillChangeVisibilityState( | 116 virtual void WillChangeVisibilityState( |
113 ShelfVisibilityState new_state) OVERRIDE; | 117 ShelfVisibilityState new_state) OVERRIDE; |
114 | 118 |
115 private: | 119 private: |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 bool shelf_hidden_; | 171 bool shelf_hidden_; |
168 // Current width of the dock. | 172 // Current width of the dock. |
169 int docked_width_; | 173 int docked_width_; |
170 | 174 |
171 // Last bounds that were sent to observers. | 175 // Last bounds that were sent to observers. |
172 gfx::Rect docked_bounds_; | 176 gfx::Rect docked_bounds_; |
173 | 177 |
174 // Side of the screen that the dock is positioned at. | 178 // Side of the screen that the dock is positioned at. |
175 DockedAlignment alignment_; | 179 DockedAlignment alignment_; |
176 | 180 |
| 181 // The last active window. Used to maintain stacking order even if no windows |
| 182 // are currently focused. |
| 183 aura::Window* last_active_window_; |
| 184 |
177 // Observers of dock bounds changes. | 185 // Observers of dock bounds changes. |
178 ObserverList<DockedWindowLayoutManagerObserver> observer_list_; | 186 ObserverList<DockedWindowLayoutManagerObserver> observer_list_; |
179 | 187 |
180 DISALLOW_COPY_AND_ASSIGN(DockedWindowLayoutManager); | 188 DISALLOW_COPY_AND_ASSIGN(DockedWindowLayoutManager); |
181 }; | 189 }; |
182 | 190 |
183 } // namespace internal | 191 } // namespace internal |
184 } // namespace ash | 192 } // namespace ash |
185 | 193 |
186 #endif // ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ | 194 #endif // ASH_WM_DOCK_DOCKED_WINDOW_LAYOUT_MANAGER_H_ |
OLD | NEW |