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