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