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 | 9 |
10 #include "ash/ash_export.h" | 10 #include "ash/ash_export.h" |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 RootWindowLayoutManager* root_window_layout() { return root_window_layout_; } | 95 RootWindowLayoutManager* root_window_layout() { return root_window_layout_; } |
96 | 96 |
97 WorkspaceController* workspace_controller() { | 97 WorkspaceController* workspace_controller() { |
98 return workspace_controller_.get(); | 98 return workspace_controller_.get(); |
99 } | 99 } |
100 | 100 |
101 AlwaysOnTopController* always_on_top_controller() { | 101 AlwaysOnTopController* always_on_top_controller() { |
102 return always_on_top_controller_.get(); | 102 return always_on_top_controller_.get(); |
103 } | 103 } |
104 | 104 |
105 keyboard::KeyboardController* keyboard_controller() { | |
106 return keyboard_controller_.get(); | |
107 } | |
108 | |
109 ScreenDimmer* screen_dimmer() { return screen_dimmer_.get(); } | 105 ScreenDimmer* screen_dimmer() { return screen_dimmer_.get(); } |
110 | 106 |
111 // Access the shelf associated with this root window controller, | 107 // Access the shelf associated with this root window controller, |
112 // NULL if no such shelf exists. | 108 // NULL if no such shelf exists. |
113 ShelfWidget* shelf() { return shelf_.get(); } | 109 ShelfWidget* shelf() { return shelf_.get(); } |
114 | 110 |
115 // Get touch HUDs associated with this root window controller. | 111 // Get touch HUDs associated with this root window controller. |
116 TouchHudDebug* touch_hud_debug() const { | 112 TouchHudDebug* touch_hud_debug() const { |
117 return touch_hud_debug_; | 113 return touch_hud_debug_; |
118 } | 114 } |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
207 // Force the shelf to query for it's current visibility state. | 203 // Force the shelf to query for it's current visibility state. |
208 void UpdateShelfVisibility(); | 204 void UpdateShelfVisibility(); |
209 | 205 |
210 // Initialize touch HUDs if necessary. | 206 // Initialize touch HUDs if necessary. |
211 void InitTouchHuds(); | 207 void InitTouchHuds(); |
212 | 208 |
213 // Returns the window, if any, which is in fullscreen mode. If multiple | 209 // Returns the window, if any, which is in fullscreen mode. If multiple |
214 // windows are in fullscreen state, the topmost one is preferred. | 210 // windows are in fullscreen state, the topmost one is preferred. |
215 const aura::Window* GetTopmostFullscreenWindow() const; | 211 const aura::Window* GetTopmostFullscreenWindow() const; |
216 | 212 |
| 213 // Enable virtual keyboard on current root window controller. |
| 214 void EnableKeyboard(keyboard::KeyboardController* keyboard_controller); |
| 215 |
| 216 // Disable virtual keyboard on current root window controller. |
| 217 void DisableKeyboard(keyboard::KeyboardController* keyboard_controller); |
| 218 |
217 private: | 219 private: |
218 void InitLayoutManagers(); | 220 void InitLayoutManagers(); |
219 | 221 |
220 // Initializes |system_background_| and possibly also |boot_splash_screen_|. | 222 // Initializes |system_background_| and possibly also |boot_splash_screen_|. |
221 // |is_first_run_after_boot| determines the background's initial color. | 223 // |is_first_run_after_boot| determines the background's initial color. |
222 void CreateSystemBackground(bool is_first_run_after_boot); | 224 void CreateSystemBackground(bool is_first_run_after_boot); |
223 | 225 |
224 // Creates each of the special window containers that holds windows of various | 226 // Creates each of the special window containers that holds windows of various |
225 // types in the shell UI. | 227 // types in the shell UI. |
226 void CreateContainersInRootWindow(aura::RootWindow* root_window); | 228 void CreateContainersInRootWindow(aura::RootWindow* root_window); |
227 | 229 |
228 // Initializes the virtual keyboard. | |
229 void InitKeyboard(); | |
230 | |
231 // Enables projection touch HUD. | 230 // Enables projection touch HUD. |
232 void EnableTouchHudProjection(); | 231 void EnableTouchHudProjection(); |
233 | 232 |
234 // Disables projection touch HUD. | 233 // Disables projection touch HUD. |
235 void DisableTouchHudProjection(); | 234 void DisableTouchHudProjection(); |
236 | 235 |
237 // Overridden from ShellObserver. | 236 // Overridden from ShellObserver. |
238 virtual void OnLoginStateChanged(user::LoginStatus status) OVERRIDE; | 237 virtual void OnLoginStateChanged(user::LoginStatus status) OVERRIDE; |
239 virtual void OnTouchHudProjectionToggled(bool enabled) OVERRIDE; | 238 virtual void OnTouchHudProjectionToggled(bool enabled) OVERRIDE; |
240 | 239 |
241 scoped_ptr<aura::RootWindow> root_window_; | 240 scoped_ptr<aura::RootWindow> root_window_; |
242 RootWindowLayoutManager* root_window_layout_; | 241 RootWindowLayoutManager* root_window_layout_; |
243 | 242 |
244 scoped_ptr<StackingController> stacking_controller_; | 243 scoped_ptr<StackingController> stacking_controller_; |
245 | 244 |
246 scoped_ptr<keyboard::KeyboardController> keyboard_controller_; | |
247 | |
248 // The shelf for managing the launcher and the status widget. | 245 // The shelf for managing the launcher and the status widget. |
249 scoped_ptr<ShelfWidget> shelf_; | 246 scoped_ptr<ShelfWidget> shelf_; |
250 | 247 |
251 // An invisible/empty window used as a event target for | 248 // An invisible/empty window used as a event target for |
252 // |MouseCursorEventFilter| before a user logs in. | 249 // |MouseCursorEventFilter| before a user logs in. |
253 // (crbug.com/266987) | 250 // (crbug.com/266987) |
254 // Its container is |LockScreenBackgroundContainer| and | 251 // Its container is |LockScreenBackgroundContainer| and |
255 // this must be deleted before the container is deleted. | 252 // this must be deleted before the container is deleted. |
256 scoped_ptr<aura::Window> mouse_event_target_; | 253 scoped_ptr<aura::Window> mouse_event_target_; |
257 | 254 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
292 | 289 |
293 | 290 |
294 // Gets the RootWindowController for |root_window|. | 291 // Gets the RootWindowController for |root_window|. |
295 ASH_EXPORT RootWindowController* GetRootWindowController( | 292 ASH_EXPORT RootWindowController* GetRootWindowController( |
296 const aura::RootWindow* root_window); | 293 const aura::RootWindow* root_window); |
297 | 294 |
298 } // namespace internal | 295 } // namespace internal |
299 } // ash | 296 } // ash |
300 | 297 |
301 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ | 298 #endif // ASH_ROOT_WINDOW_CONTROLLER_H_ |
OLD | NEW |