| 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 "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
| 9 #include "ash/shelf/shelf_types.h" | 9 #include "ash/shelf/shelf_types.h" |
| 10 #include "ash/system/user/login_status.h" | 10 #include "ash/system/user/login_status.h" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 class Point; | 23 class Point; |
| 24 } | 24 } |
| 25 | 25 |
| 26 namespace views { | 26 namespace views { |
| 27 namespace corewm { | 27 namespace corewm { |
| 28 class InputMethodEventFilter; | 28 class InputMethodEventFilter; |
| 29 class RootWindowEventFilter; | 29 class RootWindowEventFilter; |
| 30 } | 30 } |
| 31 } | 31 } |
| 32 | 32 |
| 33 namespace keyboard { |
| 34 class KeyboardController; |
| 35 } |
| 36 |
| 33 namespace ash { | 37 namespace ash { |
| 34 class StackingController; | 38 class StackingController; |
| 35 class ShelfWidget; | 39 class ShelfWidget; |
| 36 class SystemTray; | 40 class SystemTray; |
| 37 class ToplevelWindowEventHandler; | 41 class ToplevelWindowEventHandler; |
| 38 | 42 |
| 39 namespace internal { | 43 namespace internal { |
| 40 | 44 |
| 41 class BootSplashScreen; | 45 class BootSplashScreen; |
| 42 class PanelLayoutManager; | 46 class PanelLayoutManager; |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 | 171 |
| 168 // Returns true if the active workspace is in immersive mode. Exposed here | 172 // Returns true if the active workspace is in immersive mode. Exposed here |
| 169 // so clients of Ash don't need to know the details of workspace management. | 173 // so clients of Ash don't need to know the details of workspace management. |
| 170 bool IsImmersiveMode() const; | 174 bool IsImmersiveMode() const; |
| 171 | 175 |
| 172 private: | 176 private: |
| 173 // Creates each of the special window containers that holds windows of various | 177 // Creates each of the special window containers that holds windows of various |
| 174 // types in the shell UI. | 178 // types in the shell UI. |
| 175 void CreateContainersInRootWindow(aura::RootWindow* root_window); | 179 void CreateContainersInRootWindow(aura::RootWindow* root_window); |
| 176 | 180 |
| 181 // Initializes the virtual keyboard. |
| 182 void InitKeyboard(); |
| 183 |
| 177 scoped_ptr<aura::RootWindow> root_window_; | 184 scoped_ptr<aura::RootWindow> root_window_; |
| 178 RootWindowLayoutManager* root_window_layout_; | 185 RootWindowLayoutManager* root_window_layout_; |
| 179 | 186 |
| 180 scoped_ptr<StackingController> stacking_controller_; | 187 scoped_ptr<StackingController> stacking_controller_; |
| 181 | 188 |
| 189 scoped_ptr<keyboard::KeyboardController> keyboard_controller_; |
| 190 |
| 182 // The shelf for managing the launcher and the status widget. | 191 // The shelf for managing the launcher and the status widget. |
| 183 scoped_ptr<ShelfWidget> shelf_; | 192 scoped_ptr<ShelfWidget> shelf_; |
| 184 | 193 |
| 185 // Manages layout of panels. Owned by PanelContainer. | 194 // Manages layout of panels. Owned by PanelContainer. |
| 186 PanelLayoutManager* panel_layout_manager_; | 195 PanelLayoutManager* panel_layout_manager_; |
| 187 | 196 |
| 188 scoped_ptr<SystemBackgroundController> system_background_; | 197 scoped_ptr<SystemBackgroundController> system_background_; |
| 189 scoped_ptr<BootSplashScreen> boot_splash_screen_; | 198 scoped_ptr<BootSplashScreen> boot_splash_screen_; |
| 190 | 199 |
| 191 scoped_ptr<ScreenDimmer> screen_dimmer_; | 200 scoped_ptr<ScreenDimmer> screen_dimmer_; |
| 192 scoped_ptr<WorkspaceController> workspace_controller_; | 201 scoped_ptr<WorkspaceController> workspace_controller_; |
| 193 | 202 |
| 194 // Heads-up display for touch events. | 203 // Heads-up display for touch events. |
| 195 scoped_ptr<TouchObserverHUD> touch_observer_hud_; | 204 scoped_ptr<TouchObserverHUD> touch_observer_hud_; |
| 196 | 205 |
| 197 // We need to own event handlers for various containers. | 206 // We need to own event handlers for various containers. |
| 198 scoped_ptr<ToplevelWindowEventHandler> default_container_handler_; | 207 scoped_ptr<ToplevelWindowEventHandler> default_container_handler_; |
| 199 scoped_ptr<ToplevelWindowEventHandler> always_on_top_container_handler_; | 208 scoped_ptr<ToplevelWindowEventHandler> always_on_top_container_handler_; |
| 200 scoped_ptr<ToplevelWindowEventHandler> modal_container_handler_; | 209 scoped_ptr<ToplevelWindowEventHandler> modal_container_handler_; |
| 201 scoped_ptr<ToplevelWindowEventHandler> lock_modal_container_handler_; | 210 scoped_ptr<ToplevelWindowEventHandler> lock_modal_container_handler_; |
| 202 scoped_ptr<ToplevelWindowEventHandler> panel_container_handler_; | 211 scoped_ptr<ToplevelWindowEventHandler> panel_container_handler_; |
| 203 | 212 |
| 204 DISALLOW_COPY_AND_ASSIGN(RootWindowController); | 213 DISALLOW_COPY_AND_ASSIGN(RootWindowController); |
| 205 }; | 214 }; |
| 206 | 215 |
| 207 } // namespace internal | 216 } // namespace internal |
| 208 } // ash | 217 } // ash |
| 209 | 218 |
| 210 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ | 219 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ |
| OLD | NEW |