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_SHELL_H_ | 5 #ifndef ASH_SHELL_H_ |
6 #define ASH_SHELL_H_ | 6 #define ASH_SHELL_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 18 matching lines...) Expand all Loading... |
29 } | 29 } |
30 namespace views { | 30 namespace views { |
31 class NonClientFrameView; | 31 class NonClientFrameView; |
32 class Widget; | 32 class Widget; |
33 } | 33 } |
34 | 34 |
35 namespace ash { | 35 namespace ash { |
36 | 36 |
37 class AcceleratorController; | 37 class AcceleratorController; |
38 class Launcher; | 38 class Launcher; |
| 39 class FocusCycler; |
39 class PowerButtonController; | 40 class PowerButtonController; |
40 class ShellDelegate; | 41 class ShellDelegate; |
41 class VideoDetector; | 42 class VideoDetector; |
42 class WindowCycleController; | 43 class WindowCycleController; |
43 | 44 |
44 namespace internal { | 45 namespace internal { |
45 class ActivationController; | 46 class ActivationController; |
46 class AcceleratorFilter; | 47 class AcceleratorFilter; |
47 class AppList; | 48 class AppList; |
48 class DragDropController; | 49 class DragDropController; |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 bool IsModalWindowOpen() const; | 107 bool IsModalWindowOpen() const; |
107 | 108 |
108 // See enum WindowMode for details. | 109 // See enum WindowMode for details. |
109 bool IsWindowModeCompact() const { return window_mode_ == COMPACT_MODE; } | 110 bool IsWindowModeCompact() const { return window_mode_ == COMPACT_MODE; } |
110 | 111 |
111 // Creates a default views::NonClientFrameView for use by windows in the | 112 // Creates a default views::NonClientFrameView for use by windows in the |
112 // Ash environment. | 113 // Ash environment. |
113 views::NonClientFrameView* CreateDefaultNonClientFrameView( | 114 views::NonClientFrameView* CreateDefaultNonClientFrameView( |
114 views::Widget* widget); | 115 views::Widget* widget); |
115 | 116 |
| 117 // Rotate focus through containers that can recieve focus. |
| 118 void RotateFocus(bool forwards); |
| 119 |
116 AcceleratorController* accelerator_controller() { | 120 AcceleratorController* accelerator_controller() { |
117 return accelerator_controller_.get(); | 121 return accelerator_controller_.get(); |
118 } | 122 } |
119 internal::TooltipController* tooltip_controller() { | 123 internal::TooltipController* tooltip_controller() { |
120 return tooltip_controller_.get(); | 124 return tooltip_controller_.get(); |
121 } | 125 } |
122 PowerButtonController* power_button_controller() { | 126 PowerButtonController* power_button_controller() { |
123 return power_button_controller_.get(); | 127 return power_button_controller_.get(); |
124 } | 128 } |
125 VideoDetector* video_detector() { | 129 VideoDetector* video_detector() { |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
181 scoped_ptr<internal::ActivationController> activation_controller_; | 185 scoped_ptr<internal::ActivationController> activation_controller_; |
182 scoped_ptr<internal::WindowModalityController> window_modality_controller_; | 186 scoped_ptr<internal::WindowModalityController> window_modality_controller_; |
183 scoped_ptr<internal::DragDropController> drag_drop_controller_; | 187 scoped_ptr<internal::DragDropController> drag_drop_controller_; |
184 scoped_ptr<internal::WorkspaceController> workspace_controller_; | 188 scoped_ptr<internal::WorkspaceController> workspace_controller_; |
185 scoped_ptr<internal::ShadowController> shadow_controller_; | 189 scoped_ptr<internal::ShadowController> shadow_controller_; |
186 scoped_ptr<internal::TooltipController> tooltip_controller_; | 190 scoped_ptr<internal::TooltipController> tooltip_controller_; |
187 scoped_ptr<internal::VisibilityController> visibility_controller_; | 191 scoped_ptr<internal::VisibilityController> visibility_controller_; |
188 scoped_ptr<PowerButtonController> power_button_controller_; | 192 scoped_ptr<PowerButtonController> power_button_controller_; |
189 scoped_ptr<VideoDetector> video_detector_; | 193 scoped_ptr<VideoDetector> video_detector_; |
190 scoped_ptr<WindowCycleController> window_cycle_controller_; | 194 scoped_ptr<WindowCycleController> window_cycle_controller_; |
| 195 scoped_ptr<FocusCycler> focus_cycler_; |
191 | 196 |
192 // An event filter that pre-handles all key events to send them to an IME. | 197 // An event filter that pre-handles all key events to send them to an IME. |
193 scoped_ptr<internal::InputMethodEventFilter> input_method_filter_; | 198 scoped_ptr<internal::InputMethodEventFilter> input_method_filter_; |
194 // An event filter that pre-handles global accelerators. | 199 // An event filter that pre-handles global accelerators. |
195 scoped_ptr<internal::AcceleratorFilter> accelerator_filter_; | 200 scoped_ptr<internal::AcceleratorFilter> accelerator_filter_; |
196 | 201 |
197 // Can change at runtime. | 202 // Can change at runtime. |
198 WindowMode window_mode_; | 203 WindowMode window_mode_; |
199 | 204 |
200 // Owned by aura::RootWindow, cached here for type safety. | 205 // Owned by aura::RootWindow, cached here for type safety. |
201 internal::RootWindowLayoutManager* root_window_layout_; | 206 internal::RootWindowLayoutManager* root_window_layout_; |
202 | 207 |
203 // Status area with clock, Wi-Fi signal, etc. | 208 // Status area with clock, Wi-Fi signal, etc. |
204 views::Widget* status_widget_; | 209 views::Widget* status_widget_; |
205 | 210 |
206 DISALLOW_COPY_AND_ASSIGN(Shell); | 211 DISALLOW_COPY_AND_ASSIGN(Shell); |
207 }; | 212 }; |
208 | 213 |
209 } // namespace ash | 214 } // namespace ash |
210 | 215 |
211 #endif // ASH_SHELL_H_ | 216 #endif // ASH_SHELL_H_ |
OLD | NEW |