| 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 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 class Shelf; | 60 class Shelf; |
| 61 class ShelfLayoutManager; | 61 class ShelfLayoutManager; |
| 62 class ShelfWidget; | 62 class ShelfWidget; |
| 63 class StackingController; | 63 class StackingController; |
| 64 class StatusAreaWidget; | 64 class StatusAreaWidget; |
| 65 class SystemBackgroundController; | 65 class SystemBackgroundController; |
| 66 class SystemModalContainerLayoutManager; | 66 class SystemModalContainerLayoutManager; |
| 67 class SystemTray; | 67 class SystemTray; |
| 68 class TouchHudDebug; | 68 class TouchHudDebug; |
| 69 class TouchHudProjection; | 69 class TouchHudProjection; |
| 70 class WmShelfAura; |
| 70 class WmWindow; | 71 class WmWindow; |
| 71 class WorkspaceController; | 72 class WorkspaceController; |
| 72 | 73 |
| 73 #if defined(OS_CHROMEOS) | 74 #if defined(OS_CHROMEOS) |
| 74 class BootSplashScreen; | 75 class BootSplashScreen; |
| 75 class AshTouchExplorationManager; | 76 class AshTouchExplorationManager; |
| 76 #endif | 77 #endif |
| 77 | 78 |
| 78 // This class maintains the per root window state for ash. This class | 79 // This class maintains the per root window state for ash. This class |
| 79 // owns the root window and other dependent objects that should be | 80 // owns the root window and other dependent objects that should be |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 const aura::Window* GetRootWindow() const; | 112 const aura::Window* GetRootWindow() const; |
| 112 | 113 |
| 113 WorkspaceController* workspace_controller() { | 114 WorkspaceController* workspace_controller() { |
| 114 return workspace_controller_.get(); | 115 return workspace_controller_.get(); |
| 115 } | 116 } |
| 116 | 117 |
| 117 AlwaysOnTopController* always_on_top_controller() { | 118 AlwaysOnTopController* always_on_top_controller() { |
| 118 return always_on_top_controller_.get(); | 119 return always_on_top_controller_.get(); |
| 119 } | 120 } |
| 120 | 121 |
| 122 WmShelfAura* wm_shelf_aura() const { return wm_shelf_aura_.get(); } |
| 123 |
| 121 // Access the shelf widget associated with this root window controller, | 124 // Access the shelf widget associated with this root window controller, |
| 122 // NULL if no such shelf exists. | 125 // NULL if no such shelf exists. |
| 123 // DEPRECATED: Prefer GetShelf()->shelf_widget(). | 126 // DEPRECATED: Prefer GetShelf()->shelf_widget(). |
| 124 ShelfWidget* shelf_widget() { return shelf_widget_.get(); } | 127 ShelfWidget* shelf_widget() { return shelf_widget_.get(); } |
| 125 | 128 |
| 126 // Get touch HUDs associated with this root window controller. | 129 // Get touch HUDs associated with this root window controller. |
| 127 TouchHudDebug* touch_hud_debug() const { | 130 TouchHudDebug* touch_hud_debug() const { |
| 128 return touch_hud_debug_; | 131 return touch_hud_debug_; |
| 129 } | 132 } |
| 130 TouchHudProjection* touch_hud_projection() const { | 133 TouchHudProjection* touch_hud_projection() const { |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 const aura::Window* GetContainer(int container_id) const; | 182 const aura::Window* GetContainer(int container_id) const; |
| 180 | 183 |
| 181 // Show shelf view if it was created hidden (before session has started). | 184 // Show shelf view if it was created hidden (before session has started). |
| 182 // TODO(jamescook): Eliminate this and handle show via Shelf. | 185 // TODO(jamescook): Eliminate this and handle show via Shelf. |
| 183 void ShowShelf(); | 186 void ShowShelf(); |
| 184 | 187 |
| 185 // Creates the shelf for this root window and notifies observers. | 188 // Creates the shelf for this root window and notifies observers. |
| 186 void CreateShelf(); | 189 void CreateShelf(); |
| 187 | 190 |
| 188 // Returns the shelf controller for this root window. | 191 // Returns the shelf controller for this root window. |
| 192 // TODO(jamescook): Remove this and use WmRootWindowController::GetShelf(). |
| 189 Shelf* GetShelf() const; | 193 Shelf* GetShelf() const; |
| 190 | 194 |
| 191 // Called when the login status changes after login (such as lock/unlock). | 195 // Called when the login status changes after login (such as lock/unlock). |
| 192 // TODO(oshima): Investigate if we can merge this and |OnLoginStateChanged|. | 196 // TODO(oshima): Investigate if we can merge this and |OnLoginStateChanged|. |
| 193 void UpdateAfterLoginStatusChange(user::LoginStatus status); | 197 void UpdateAfterLoginStatusChange(user::LoginStatus status); |
| 194 | 198 |
| 195 // Called when the brightness/grayscale animation from white to the login | 199 // Called when the brightness/grayscale animation from white to the login |
| 196 // desktop background image has started. Starts |boot_splash_screen_|'s | 200 // desktop background image has started. Starts |boot_splash_screen_|'s |
| 197 // hiding animation (if the screen is non-NULL). | 201 // hiding animation (if the screen is non-NULL). |
| 198 void HandleInitialDesktopBackgroundAnimationStarted(); | 202 void HandleInitialDesktopBackgroundAnimationStarted(); |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 // Overridden from ShellObserver. | 272 // Overridden from ShellObserver. |
| 269 void OnLoginStateChanged(user::LoginStatus status) override; | 273 void OnLoginStateChanged(user::LoginStatus status) override; |
| 270 void OnTouchHudProjectionToggled(bool enabled) override; | 274 void OnTouchHudProjectionToggled(bool enabled) override; |
| 271 | 275 |
| 272 std::unique_ptr<AshWindowTreeHost> ash_host_; | 276 std::unique_ptr<AshWindowTreeHost> ash_host_; |
| 273 | 277 |
| 274 std::unique_ptr<RootWindowControllerCommon> root_window_controller_common_; | 278 std::unique_ptr<RootWindowControllerCommon> root_window_controller_common_; |
| 275 | 279 |
| 276 std::unique_ptr<StackingController> stacking_controller_; | 280 std::unique_ptr<StackingController> stacking_controller_; |
| 277 | 281 |
| 282 // The shelf controller for this root window. Exists for the entire lifetime |
| 283 // of the RootWindowController so that it is safe for observers to be added |
| 284 // to it during construction of the shelf widget and status tray. |
| 285 std::unique_ptr<WmShelfAura> wm_shelf_aura_; |
| 286 |
| 278 // The shelf widget for this root window. | 287 // The shelf widget for this root window. |
| 279 std::unique_ptr<ShelfWidget> shelf_widget_; | 288 std::unique_ptr<ShelfWidget> shelf_widget_; |
| 280 | 289 |
| 281 // An invisible/empty window used as a event target for | 290 // An invisible/empty window used as a event target for |
| 282 // |MouseCursorEventFilter| before a user logs in. | 291 // |MouseCursorEventFilter| before a user logs in. |
| 283 // (crbug.com/266987) | 292 // (crbug.com/266987) |
| 284 // Its container is |LockScreenBackgroundContainer| and | 293 // Its container is |LockScreenBackgroundContainer| and |
| 285 // this must be deleted before the container is deleted. | 294 // this must be deleted before the container is deleted. |
| 286 std::unique_ptr<aura::Window> mouse_event_target_; | 295 std::unique_ptr<aura::Window> mouse_event_target_; |
| 287 | 296 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 325 | 334 |
| 326 // On classic ash, returns the RootWindowController for the given |root_window|. | 335 // On classic ash, returns the RootWindowController for the given |root_window|. |
| 327 // On mus ash, returns the RootWindowController for the primary display. | 336 // On mus ash, returns the RootWindowController for the primary display. |
| 328 // See RootWindowController class comment above. | 337 // See RootWindowController class comment above. |
| 329 ASH_EXPORT RootWindowController* GetRootWindowController( | 338 ASH_EXPORT RootWindowController* GetRootWindowController( |
| 330 const aura::Window* root_window); | 339 const aura::Window* root_window); |
| 331 | 340 |
| 332 } // namespace ash | 341 } // namespace ash |
| 333 | 342 |
| 334 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ | 343 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ |
| OLD | NEW |