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 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 class SessionController; | 142 class SessionController; |
143 class ShelfController; | 143 class ShelfController; |
144 class ShelfModel; | 144 class ShelfModel; |
145 class ShelfWindowWatcher; | 145 class ShelfWindowWatcher; |
146 class ShellDelegate; | 146 class ShellDelegate; |
147 struct ShellInitParams; | 147 struct ShellInitParams; |
148 class ShellObserver; | 148 class ShellObserver; |
149 class ShutdownController; | 149 class ShutdownController; |
150 class ShutdownObserver; | 150 class ShutdownObserver; |
151 class SmsObserver; | 151 class SmsObserver; |
| 152 class SplitViewController; |
152 class StickyKeysController; | 153 class StickyKeysController; |
153 class SystemGestureEventFilter; | 154 class SystemGestureEventFilter; |
154 class SystemModalContainerEventFilter; | 155 class SystemModalContainerEventFilter; |
155 class SystemTray; | 156 class SystemTray; |
156 class SystemTrayController; | 157 class SystemTrayController; |
157 class SystemTrayDelegate; | 158 class SystemTrayDelegate; |
158 class SystemTrayNotifier; | 159 class SystemTrayNotifier; |
159 class ToplevelWindowEventHandler; | 160 class ToplevelWindowEventHandler; |
160 class ToastManager; | 161 class ToastManager; |
161 class TrayAction; | 162 class TrayAction; |
(...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
527 StickyKeysController* sticky_keys_controller() { | 528 StickyKeysController* sticky_keys_controller() { |
528 return sticky_keys_controller_.get(); | 529 return sticky_keys_controller_.get(); |
529 } | 530 } |
530 | 531 |
531 ScreenPinningController* screen_pinning_controller() { | 532 ScreenPinningController* screen_pinning_controller() { |
532 return screen_pinning_controller_.get(); | 533 return screen_pinning_controller_.get(); |
533 } | 534 } |
534 | 535 |
535 GPUSupport* gpu_support() { return gpu_support_.get(); } | 536 GPUSupport* gpu_support() { return gpu_support_.get(); } |
536 | 537 |
| 538 SplitViewController* split_view_controller() { |
| 539 return split_view_controller_.get(); |
| 540 } |
| 541 |
| 542 // Returns true if split view mode is active. |
| 543 bool IsSplitViewModeActive() const; |
| 544 |
537 void AddShellObserver(ShellObserver* observer); | 545 void AddShellObserver(ShellObserver* observer); |
538 void RemoveShellObserver(ShellObserver* observer); | 546 void RemoveShellObserver(ShellObserver* observer); |
539 | 547 |
540 // Shows the app list on the active root window. | 548 // Shows the app list on the active root window. |
541 void ShowAppList(); | 549 void ShowAppList(); |
542 | 550 |
543 // Dismisses the app list. | 551 // Dismisses the app list. |
544 void DismissAppList(); | 552 void DismissAppList(); |
545 | 553 |
546 // Shows the app list if it's not visible. Dismisses it otherwise. | 554 // Shows the app list if it's not visible. Dismisses it otherwise. |
(...skipping 21 matching lines...) Expand all Loading... |
568 // returning to their original position. | 576 // returning to their original position. |
569 void NotifyMaximizeModeEnded(); | 577 void NotifyMaximizeModeEnded(); |
570 | 578 |
571 // Notifies observers that overview mode is about to be started (before the | 579 // Notifies observers that overview mode is about to be started (before the |
572 // windows get re-arranged). | 580 // windows get re-arranged). |
573 void NotifyOverviewModeStarting(); | 581 void NotifyOverviewModeStarting(); |
574 | 582 |
575 // Notifies observers that overview mode has ended. | 583 // Notifies observers that overview mode has ended. |
576 void NotifyOverviewModeEnded(); | 584 void NotifyOverviewModeEnded(); |
577 | 585 |
| 586 // Notifies observers that split view mode is about to be started (before the |
| 587 // window gets snapped and activated). |
| 588 void NotifySplitViewModeStarting(); |
| 589 |
| 590 // Notifies observers that split view mode has ended. |
| 591 void NotifySplitViewModeEnded(); |
| 592 |
578 // Notifies observers that fullscreen mode has changed for |root_window|. | 593 // Notifies observers that fullscreen mode has changed for |root_window|. |
579 void NotifyFullscreenStateChanged(bool is_fullscreen, | 594 void NotifyFullscreenStateChanged(bool is_fullscreen, |
580 aura::Window* root_window); | 595 aura::Window* root_window); |
581 | 596 |
582 // Notifies observers that |pinned_window| changed its pinned window state. | 597 // Notifies observers that |pinned_window| changed its pinned window state. |
583 void NotifyPinnedStateChanged(aura::Window* pinned_window); | 598 void NotifyPinnedStateChanged(aura::Window* pinned_window); |
584 | 599 |
585 // Notifies observers that the virtual keyboard has been | 600 // Notifies observers that the virtual keyboard has been |
586 // activated/deactivated for |root_window|. | 601 // activated/deactivated for |root_window|. |
587 void NotifyVirtualKeyboardActivated(bool activated, | 602 void NotifyVirtualKeyboardActivated(bool activated, |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
791 std::unique_ptr<ScreenLayoutObserver> screen_layout_observer_; | 806 std::unique_ptr<ScreenLayoutObserver> screen_layout_observer_; |
792 | 807 |
793 std::unique_ptr<AshTouchTransformController> touch_transformer_controller_; | 808 std::unique_ptr<AshTouchTransformController> touch_transformer_controller_; |
794 | 809 |
795 std::unique_ptr<ui::EventHandler> magnifier_key_scroll_handler_; | 810 std::unique_ptr<ui::EventHandler> magnifier_key_scroll_handler_; |
796 std::unique_ptr<ui::EventHandler> speech_feedback_handler_; | 811 std::unique_ptr<ui::EventHandler> speech_feedback_handler_; |
797 std::unique_ptr<LaserPointerController> laser_pointer_controller_; | 812 std::unique_ptr<LaserPointerController> laser_pointer_controller_; |
798 std::unique_ptr<PartialMagnificationController> | 813 std::unique_ptr<PartialMagnificationController> |
799 partial_magnification_controller_; | 814 partial_magnification_controller_; |
800 | 815 |
| 816 // The split view controller for Chrome OS in tablet mode. |
| 817 std::unique_ptr<SplitViewController> split_view_controller_; |
| 818 |
801 // |native_cursor_manager_| is owned by |cursor_manager_|, but we keep a | 819 // |native_cursor_manager_| is owned by |cursor_manager_|, but we keep a |
802 // pointer to vend to test code. | 820 // pointer to vend to test code. |
803 NativeCursorManagerAsh* native_cursor_manager_; | 821 NativeCursorManagerAsh* native_cursor_manager_; |
804 | 822 |
805 // Cursor may be hidden on certain key events in Chrome OS, whereas we never | 823 // Cursor may be hidden on certain key events in Chrome OS, whereas we never |
806 // hide the cursor on Windows. | 824 // hide the cursor on Windows. |
807 std::unique_ptr<::wm::CursorManager> cursor_manager_; | 825 std::unique_ptr<::wm::CursorManager> cursor_manager_; |
808 | 826 |
809 // For testing only: simulate that a modal window is open | 827 // For testing only: simulate that a modal window is open |
810 bool simulate_modal_window_open_for_testing_; | 828 bool simulate_modal_window_open_for_testing_; |
(...skipping 12 matching lines...) Expand all Loading... |
823 std::unique_ptr<AppListDelegateImpl> app_list_delegate_impl_; | 841 std::unique_ptr<AppListDelegateImpl> app_list_delegate_impl_; |
824 | 842 |
825 base::ObserverList<ShellObserver> shell_observers_; | 843 base::ObserverList<ShellObserver> shell_observers_; |
826 | 844 |
827 DISALLOW_COPY_AND_ASSIGN(Shell); | 845 DISALLOW_COPY_AND_ASSIGN(Shell); |
828 }; | 846 }; |
829 | 847 |
830 } // namespace ash | 848 } // namespace ash |
831 | 849 |
832 #endif // ASH_SHELL_H_ | 850 #endif // ASH_SHELL_H_ |
OLD | NEW |