OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_ROOT_WINDOW_CONTROLLER_H_ | 5 #ifndef ASH_ROOT_WINDOW_CONTROLLER_H_ |
6 #define ASH_ROOT_WINDOW_CONTROLLER_H_ | 6 #define ASH_ROOT_WINDOW_CONTROLLER_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 } | 49 } |
50 | 50 |
51 namespace ash { | 51 namespace ash { |
52 class AshWindowTreeHost; | 52 class AshWindowTreeHost; |
53 class AlwaysOnTopController; | 53 class AlwaysOnTopController; |
54 class AnimatingWallpaperWidgetController; | 54 class AnimatingWallpaperWidgetController; |
55 class DockedWindowLayoutManager; | 55 class DockedWindowLayoutManager; |
56 enum class LoginStatus; | 56 enum class LoginStatus; |
57 class PanelLayoutManager; | 57 class PanelLayoutManager; |
58 class RootWindowControllerCommon; | 58 class RootWindowControllerCommon; |
59 class Shelf; | |
60 class ShelfLayoutManager; | 59 class ShelfLayoutManager; |
61 class ShelfWidget; | 60 class ShelfWidget; |
62 class StackingController; | 61 class StackingController; |
63 class StatusAreaWidget; | 62 class StatusAreaWidget; |
64 class SystemModalContainerLayoutManager; | 63 class SystemModalContainerLayoutManager; |
65 class SystemTray; | 64 class SystemTray; |
66 class SystemWallpaperController; | 65 class SystemWallpaperController; |
67 class TouchHudDebug; | 66 class TouchHudDebug; |
68 class TouchHudProjection; | 67 class TouchHudProjection; |
69 class WallpaperWidgetController; | 68 class WallpaperWidgetController; |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 aura::Window* GetContainer(int container_id); | 178 aura::Window* GetContainer(int container_id); |
180 const aura::Window* GetContainer(int container_id) const; | 179 const aura::Window* GetContainer(int container_id) const; |
181 | 180 |
182 // Show shelf view if it was created hidden (before session has started). | 181 // Show shelf view if it was created hidden (before session has started). |
183 // TODO(jamescook): Eliminate this and handle show via Shelf. | 182 // TODO(jamescook): Eliminate this and handle show via Shelf. |
184 void ShowShelf(); | 183 void ShowShelf(); |
185 | 184 |
186 // Creates the shelf for this root window and notifies observers. | 185 // Creates the shelf for this root window and notifies observers. |
187 void CreateShelf(); | 186 void CreateShelf(); |
188 | 187 |
189 // Returns the shelf controller for this root window. | |
190 // TODO(jamescook): Remove this and use WmRootWindowController::GetShelf(). | |
191 Shelf* GetShelf() const; | |
192 | |
193 // Called when the login status changes after login (such as lock/unlock). | 188 // Called when the login status changes after login (such as lock/unlock). |
194 // TODO(oshima): Investigate if we can merge this and |OnLoginStateChanged|. | 189 // TODO(oshima): Investigate if we can merge this and |OnLoginStateChanged|. |
195 void UpdateAfterLoginStatusChange(LoginStatus status); | 190 void UpdateAfterLoginStatusChange(LoginStatus status); |
196 | 191 |
197 // Called when the brightness/grayscale animation from white to the login | 192 // Called when the brightness/grayscale animation from white to the login |
198 // wallpaper image has started. Starts |boot_splash_screen_|'s hiding | 193 // wallpaper image has started. Starts |boot_splash_screen_|'s hiding |
199 // animation (if the screen is non-NULL). | 194 // animation (if the screen is non-NULL). |
200 void HandleInitialWallpaperAnimationStarted(); | 195 void HandleInitialWallpaperAnimationStarted(); |
201 | 196 |
202 // Called when the wallpaper animation is finished. Updates | 197 // Called when the wallpaper animation is finished. Updates |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
272 | 267 |
273 std::unique_ptr<RootWindowControllerCommon> root_window_controller_common_; | 268 std::unique_ptr<RootWindowControllerCommon> root_window_controller_common_; |
274 | 269 |
275 std::unique_ptr<StackingController> stacking_controller_; | 270 std::unique_ptr<StackingController> stacking_controller_; |
276 | 271 |
277 // The shelf controller for this root window. Exists for the entire lifetime | 272 // The shelf controller for this root window. Exists for the entire lifetime |
278 // of the RootWindowController so that it is safe for observers to be added | 273 // of the RootWindowController so that it is safe for observers to be added |
279 // to it during construction of the shelf widget and status tray. | 274 // to it during construction of the shelf widget and status tray. |
280 std::unique_ptr<WmShelfAura> wm_shelf_aura_; | 275 std::unique_ptr<WmShelfAura> wm_shelf_aura_; |
281 | 276 |
282 // Legacy shelf controller. Only present after shelf is created (post-login). | |
283 std::unique_ptr<Shelf> shelf_; | |
284 | |
285 // The shelf widget for this root window. | 277 // The shelf widget for this root window. |
| 278 // TODO(jamescook): Move ownership to WmShelf. |
286 std::unique_ptr<ShelfWidget> shelf_widget_; | 279 std::unique_ptr<ShelfWidget> shelf_widget_; |
287 | 280 |
288 // An invisible/empty window used as a event target for | 281 // An invisible/empty window used as a event target for |
289 // |MouseCursorEventFilter| before a user logs in. | 282 // |MouseCursorEventFilter| before a user logs in. |
290 // (crbug.com/266987) | 283 // (crbug.com/266987) |
291 // Its container is |LockScreenWallpaperContainer| and | 284 // Its container is |LockScreenWallpaperContainer| and |
292 // this must be deleted before the container is deleted. | 285 // this must be deleted before the container is deleted. |
293 std::unique_ptr<aura::Window> mouse_event_target_; | 286 std::unique_ptr<aura::Window> mouse_event_target_; |
294 | 287 |
295 // Manages layout of docked windows. Owned by DockedContainer. | 288 // Manages layout of docked windows. Owned by DockedContainer. |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 | 325 |
333 // On classic ash, returns the RootWindowController for the given |root_window|. | 326 // On classic ash, returns the RootWindowController for the given |root_window|. |
334 // On mus ash, returns the RootWindowController for the primary display. | 327 // On mus ash, returns the RootWindowController for the primary display. |
335 // See RootWindowController class comment above. | 328 // See RootWindowController class comment above. |
336 ASH_EXPORT RootWindowController* GetRootWindowController( | 329 ASH_EXPORT RootWindowController* GetRootWindowController( |
337 const aura::Window* root_window); | 330 const aura::Window* root_window); |
338 | 331 |
339 } // namespace ash | 332 } // namespace ash |
340 | 333 |
341 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ | 334 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ |
OLD | NEW |