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 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 class SessionController; | 144 class SessionController; |
145 class ShelfController; | 145 class ShelfController; |
146 class ShelfModel; | 146 class ShelfModel; |
147 class ShelfWindowWatcher; | 147 class ShelfWindowWatcher; |
148 class ShellDelegate; | 148 class ShellDelegate; |
149 struct ShellInitParams; | 149 struct ShellInitParams; |
150 class ShellObserver; | 150 class ShellObserver; |
151 class ShutdownController; | 151 class ShutdownController; |
152 class ShutdownObserver; | 152 class ShutdownObserver; |
153 class SmsObserver; | 153 class SmsObserver; |
| 154 class SplitViewController; |
154 class StickyKeysController; | 155 class StickyKeysController; |
155 class SystemGestureEventFilter; | 156 class SystemGestureEventFilter; |
156 class SystemModalContainerEventFilter; | 157 class SystemModalContainerEventFilter; |
157 class SystemTray; | 158 class SystemTray; |
158 class SystemTrayController; | 159 class SystemTrayController; |
159 class SystemTrayDelegate; | 160 class SystemTrayDelegate; |
160 class SystemTrayNotifier; | 161 class SystemTrayNotifier; |
161 class ToplevelWindowEventHandler; | 162 class ToplevelWindowEventHandler; |
162 class ToastManager; | 163 class ToastManager; |
163 class TrayAction; | 164 class TrayAction; |
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
534 StickyKeysController* sticky_keys_controller() { | 535 StickyKeysController* sticky_keys_controller() { |
535 return sticky_keys_controller_.get(); | 536 return sticky_keys_controller_.get(); |
536 } | 537 } |
537 | 538 |
538 ScreenPinningController* screen_pinning_controller() { | 539 ScreenPinningController* screen_pinning_controller() { |
539 return screen_pinning_controller_.get(); | 540 return screen_pinning_controller_.get(); |
540 } | 541 } |
541 | 542 |
542 GPUSupport* gpu_support() { return gpu_support_.get(); } | 543 GPUSupport* gpu_support() { return gpu_support_.get(); } |
543 | 544 |
| 545 SplitViewController* split_view_controller() { |
| 546 return split_view_controller_.get(); |
| 547 } |
| 548 |
| 549 // Returns true if split view mode is active. |
| 550 bool IsSplitViewModeActive() const; |
| 551 |
544 void AddShellObserver(ShellObserver* observer); | 552 void AddShellObserver(ShellObserver* observer); |
545 void RemoveShellObserver(ShellObserver* observer); | 553 void RemoveShellObserver(ShellObserver* observer); |
546 | 554 |
547 // Shows the app list on the active root window. | 555 // Shows the app list on the active root window. |
548 void ShowAppList(); | 556 void ShowAppList(); |
549 | 557 |
550 // Dismisses the app list. | 558 // Dismisses the app list. |
551 void DismissAppList(); | 559 void DismissAppList(); |
552 | 560 |
553 // Shows the app list if it's not visible. Dismisses it otherwise. | 561 // Shows the app list if it's not visible. Dismisses it otherwise. |
(...skipping 21 matching lines...) Expand all Loading... |
575 // returning to their original position. | 583 // returning to their original position. |
576 void NotifyMaximizeModeEnded(); | 584 void NotifyMaximizeModeEnded(); |
577 | 585 |
578 // Notifies observers that overview mode is about to be started (before the | 586 // Notifies observers that overview mode is about to be started (before the |
579 // windows get re-arranged). | 587 // windows get re-arranged). |
580 void NotifyOverviewModeStarting(); | 588 void NotifyOverviewModeStarting(); |
581 | 589 |
582 // Notifies observers that overview mode has ended. | 590 // Notifies observers that overview mode has ended. |
583 void NotifyOverviewModeEnded(); | 591 void NotifyOverviewModeEnded(); |
584 | 592 |
| 593 // Notifies observers that split view mode is about to be started (before the |
| 594 // window gets snapped and activated). |
| 595 void NotifySplitViewModeStarting(); |
| 596 |
| 597 // Notifies observers that split view mode has ended. |
| 598 void NotifySplitViewModeEnded(); |
| 599 |
585 // Notifies observers that fullscreen mode has changed for |root_window|. | 600 // Notifies observers that fullscreen mode has changed for |root_window|. |
586 void NotifyFullscreenStateChanged(bool is_fullscreen, | 601 void NotifyFullscreenStateChanged(bool is_fullscreen, |
587 aura::Window* root_window); | 602 aura::Window* root_window); |
588 | 603 |
589 // Notifies observers that |pinned_window| changed its pinned window state. | 604 // Notifies observers that |pinned_window| changed its pinned window state. |
590 void NotifyPinnedStateChanged(aura::Window* pinned_window); | 605 void NotifyPinnedStateChanged(aura::Window* pinned_window); |
591 | 606 |
592 // Notifies observers that the virtual keyboard has been | 607 // Notifies observers that the virtual keyboard has been |
593 // activated/deactivated for |root_window|. | 608 // activated/deactivated for |root_window|. |
594 void NotifyVirtualKeyboardActivated(bool activated, | 609 void NotifyVirtualKeyboardActivated(bool activated, |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
798 std::unique_ptr<ScreenLayoutObserver> screen_layout_observer_; | 813 std::unique_ptr<ScreenLayoutObserver> screen_layout_observer_; |
799 | 814 |
800 std::unique_ptr<AshTouchTransformController> touch_transformer_controller_; | 815 std::unique_ptr<AshTouchTransformController> touch_transformer_controller_; |
801 | 816 |
802 std::unique_ptr<ui::EventHandler> magnifier_key_scroll_handler_; | 817 std::unique_ptr<ui::EventHandler> magnifier_key_scroll_handler_; |
803 std::unique_ptr<ui::EventHandler> speech_feedback_handler_; | 818 std::unique_ptr<ui::EventHandler> speech_feedback_handler_; |
804 std::unique_ptr<LaserPointerController> laser_pointer_controller_; | 819 std::unique_ptr<LaserPointerController> laser_pointer_controller_; |
805 std::unique_ptr<PartialMagnificationController> | 820 std::unique_ptr<PartialMagnificationController> |
806 partial_magnification_controller_; | 821 partial_magnification_controller_; |
807 | 822 |
| 823 // The split view controller for Chrome OS in tablet mode. |
| 824 std::unique_ptr<SplitViewController> split_view_controller_; |
| 825 |
808 // |native_cursor_manager_| is owned by |cursor_manager_|, but we keep a | 826 // |native_cursor_manager_| is owned by |cursor_manager_|, but we keep a |
809 // pointer to vend to test code. | 827 // pointer to vend to test code. |
810 AshNativeCursorManager* native_cursor_manager_; | 828 AshNativeCursorManager* native_cursor_manager_; |
811 | 829 |
812 // Cursor may be hidden on certain key events in Chrome OS, whereas we never | 830 // Cursor may be hidden on certain key events in Chrome OS, whereas we never |
813 // hide the cursor on Windows. | 831 // hide the cursor on Windows. |
814 std::unique_ptr<::wm::CursorManager> cursor_manager_; | 832 std::unique_ptr<::wm::CursorManager> cursor_manager_; |
815 | 833 |
816 // For testing only: simulate that a modal window is open | 834 // For testing only: simulate that a modal window is open |
817 bool simulate_modal_window_open_for_testing_; | 835 bool simulate_modal_window_open_for_testing_; |
(...skipping 14 matching lines...) Expand all Loading... |
832 base::ObserverList<ShellObserver> shell_observers_; | 850 base::ObserverList<ShellObserver> shell_observers_; |
833 | 851 |
834 scoped_refptr<base::SequencedWorkerPool> blocking_pool_; | 852 scoped_refptr<base::SequencedWorkerPool> blocking_pool_; |
835 | 853 |
836 DISALLOW_COPY_AND_ASSIGN(Shell); | 854 DISALLOW_COPY_AND_ASSIGN(Shell); |
837 }; | 855 }; |
838 | 856 |
839 } // namespace ash | 857 } // namespace ash |
840 | 858 |
841 #endif // ASH_SHELL_H_ | 859 #endif // ASH_SHELL_H_ |
OLD | NEW |