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 #include "ash/shell.h" | 5 #include "ash/shell.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
100 #include "ash/wm/lock_state_controller.h" | 100 #include "ash/wm/lock_state_controller.h" |
101 #include "ash/wm/maximize_mode/maximize_mode_controller.h" | 101 #include "ash/wm/maximize_mode/maximize_mode_controller.h" |
102 #include "ash/wm/maximize_mode/maximize_mode_window_manager.h" | 102 #include "ash/wm/maximize_mode/maximize_mode_window_manager.h" |
103 #include "ash/wm/mru_window_tracker.h" | 103 #include "ash/wm/mru_window_tracker.h" |
104 #include "ash/wm/overlay_event_filter.h" | 104 #include "ash/wm/overlay_event_filter.h" |
105 #include "ash/wm/overview/window_selector_controller.h" | 105 #include "ash/wm/overview/window_selector_controller.h" |
106 #include "ash/wm/power_button_controller.h" | 106 #include "ash/wm/power_button_controller.h" |
107 #include "ash/wm/resize_shadow_controller.h" | 107 #include "ash/wm/resize_shadow_controller.h" |
108 #include "ash/wm/root_window_finder.h" | 108 #include "ash/wm/root_window_finder.h" |
109 #include "ash/wm/screen_pinning_controller.h" | 109 #include "ash/wm/screen_pinning_controller.h" |
110 #include "ash/wm/splitview/split_view_controller.h" | |
110 #include "ash/wm/system_gesture_event_filter.h" | 111 #include "ash/wm/system_gesture_event_filter.h" |
111 #include "ash/wm/system_modal_container_event_filter.h" | 112 #include "ash/wm/system_modal_container_event_filter.h" |
112 #include "ash/wm/system_modal_container_layout_manager.h" | 113 #include "ash/wm/system_modal_container_layout_manager.h" |
113 #include "ash/wm/toplevel_window_event_handler.h" | 114 #include "ash/wm/toplevel_window_event_handler.h" |
114 #include "ash/wm/video_detector.h" | 115 #include "ash/wm/video_detector.h" |
115 #include "ash/wm/window_animations.h" | 116 #include "ash/wm/window_animations.h" |
116 #include "ash/wm/window_cycle_controller.h" | 117 #include "ash/wm/window_cycle_controller.h" |
117 #include "ash/wm/window_positioner.h" | 118 #include "ash/wm/window_positioner.h" |
118 #include "ash/wm/window_properties.h" | 119 #include "ash/wm/window_properties.h" |
119 #include "ash/wm/window_util.h" | 120 #include "ash/wm/window_util.h" |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
444 native_cursor_manager_->SetNativeCursorEnabled(!enabled); | 445 native_cursor_manager_->SetNativeCursorEnabled(!enabled); |
445 } | 446 } |
446 } | 447 } |
447 | 448 |
448 void Shell::DoInitialWorkspaceAnimation() { | 449 void Shell::DoInitialWorkspaceAnimation() { |
449 return GetPrimaryRootWindowController() | 450 return GetPrimaryRootWindowController() |
450 ->workspace_controller() | 451 ->workspace_controller() |
451 ->DoInitialAnimation(); | 452 ->DoInitialAnimation(); |
452 } | 453 } |
453 | 454 |
455 bool Shell::IsSplitViewModeActive() const { | |
456 return split_view_controller_->IsSplitViewModeActive(); | |
457 } | |
458 | |
454 void Shell::AddShellObserver(ShellObserver* observer) { | 459 void Shell::AddShellObserver(ShellObserver* observer) { |
455 shell_observers_.AddObserver(observer); | 460 shell_observers_.AddObserver(observer); |
456 } | 461 } |
457 | 462 |
458 void Shell::RemoveShellObserver(ShellObserver* observer) { | 463 void Shell::RemoveShellObserver(ShellObserver* observer) { |
459 shell_observers_.RemoveObserver(observer); | 464 shell_observers_.RemoveObserver(observer); |
460 } | 465 } |
461 | 466 |
462 void Shell::ShowAppList() { | 467 void Shell::ShowAppList() { |
463 // Show the app list on the default display for new windows. | 468 // Show the app list on the default display for new windows. |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
509 void Shell::NotifyOverviewModeStarting() { | 514 void Shell::NotifyOverviewModeStarting() { |
510 for (auto& observer : shell_observers_) | 515 for (auto& observer : shell_observers_) |
511 observer.OnOverviewModeStarting(); | 516 observer.OnOverviewModeStarting(); |
512 } | 517 } |
513 | 518 |
514 void Shell::NotifyOverviewModeEnded() { | 519 void Shell::NotifyOverviewModeEnded() { |
515 for (auto& observer : shell_observers_) | 520 for (auto& observer : shell_observers_) |
516 observer.OnOverviewModeEnded(); | 521 observer.OnOverviewModeEnded(); |
517 } | 522 } |
518 | 523 |
524 void Shell::NotifySplitViewModeStarting() { | |
525 for (auto& observer : shell_observers_) | |
526 observer.OnSplitViewModeStarting(); | |
527 } | |
528 | |
529 void Shell::NotifySplitViewModeEnded() { | |
530 for (auto& observer : shell_observers_) | |
531 observer.OnSplitViewModeEnded(); | |
532 } | |
533 | |
519 void Shell::NotifyFullscreenStateChanged(bool is_fullscreen, | 534 void Shell::NotifyFullscreenStateChanged(bool is_fullscreen, |
520 aura::Window* root_window) { | 535 aura::Window* root_window) { |
521 for (auto& observer : shell_observers_) | 536 for (auto& observer : shell_observers_) |
522 observer.OnFullscreenStateChanged(is_fullscreen, root_window); | 537 observer.OnFullscreenStateChanged(is_fullscreen, root_window); |
523 } | 538 } |
524 | 539 |
525 void Shell::NotifyPinnedStateChanged(aura::Window* pinned_window) { | 540 void Shell::NotifyPinnedStateChanged(aura::Window* pinned_window) { |
526 for (auto& observer : shell_observers_) | 541 for (auto& observer : shell_observers_) |
527 observer.OnPinnedStateChanged(pinned_window); | 542 observer.OnPinnedStateChanged(pinned_window); |
528 } | 543 } |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
706 tooltip_controller_.reset(); | 721 tooltip_controller_.reset(); |
707 event_client_.reset(); | 722 event_client_.reset(); |
708 toplevel_window_event_handler_.reset(); | 723 toplevel_window_event_handler_.reset(); |
709 visibility_controller_.reset(); | 724 visibility_controller_.reset(); |
710 | 725 |
711 power_button_controller_.reset(); | 726 power_button_controller_.reset(); |
712 lock_state_controller_.reset(); | 727 lock_state_controller_.reset(); |
713 | 728 |
714 screen_pinning_controller_.reset(); | 729 screen_pinning_controller_.reset(); |
715 | 730 |
731 split_view_controller_.reset(); | |
oshima
2017/06/14 00:19:26
can you keep the reverse order of init process?
xdai1
2017/06/15 22:11:40
Done. However, in line 639 in this patch the comme
oshima
2017/06/16 01:20:56
That's added after we had issues with mixed order.
xdai1
2017/06/16 18:49:52
I see. Thanks!
| |
732 | |
716 resolution_notification_controller_.reset(); | 733 resolution_notification_controller_.reset(); |
717 screenshot_controller_.reset(); | 734 screenshot_controller_.reset(); |
718 mouse_cursor_filter_.reset(); | 735 mouse_cursor_filter_.reset(); |
719 modality_filter_.reset(); | 736 modality_filter_.reset(); |
720 | 737 |
721 touch_transformer_controller_.reset(); | 738 touch_transformer_controller_.reset(); |
722 audio_a11y_controller_.reset(); | 739 audio_a11y_controller_.reset(); |
723 laser_pointer_controller_.reset(); | 740 laser_pointer_controller_.reset(); |
724 partial_magnification_controller_.reset(); | 741 partial_magnification_controller_.reset(); |
725 | 742 |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1099 new ui::UserActivityPowerManagerNotifier(user_activity_detector_.get())); | 1116 new ui::UserActivityPowerManagerNotifier(user_activity_detector_.get())); |
1100 video_activity_notifier_.reset( | 1117 video_activity_notifier_.reset( |
1101 new VideoActivityNotifier(video_detector_.get())); | 1118 new VideoActivityNotifier(video_detector_.get())); |
1102 bluetooth_notification_controller_.reset(new BluetoothNotificationController); | 1119 bluetooth_notification_controller_.reset(new BluetoothNotificationController); |
1103 if (ShouldEnableSimplifiedDisplayManagement()) { | 1120 if (ShouldEnableSimplifiedDisplayManagement()) { |
1104 screen_orientation_controller_.reset(new ScreenOrientationController()); | 1121 screen_orientation_controller_.reset(new ScreenOrientationController()); |
1105 screen_layout_observer_.reset(new ScreenLayoutObserver()); | 1122 screen_layout_observer_.reset(new ScreenLayoutObserver()); |
1106 } | 1123 } |
1107 sms_observer_.reset(new SmsObserver()); | 1124 sms_observer_.reset(new SmsObserver()); |
1108 | 1125 |
1126 split_view_controller_.reset(new SplitViewController()); | |
1127 | |
1109 // The compositor thread and main message loop have to be running in | 1128 // The compositor thread and main message loop have to be running in |
1110 // order to create mirror window. Run it after the main message loop | 1129 // order to create mirror window. Run it after the main message loop |
1111 // is started. | 1130 // is started. |
1112 if (ShouldEnableSimplifiedDisplayManagement()) | 1131 if (ShouldEnableSimplifiedDisplayManagement()) |
1113 display_manager_->CreateMirrorWindowAsyncIfAny(); | 1132 display_manager_->CreateMirrorWindowAsyncIfAny(); |
1114 | 1133 |
1115 for (auto& observer : shell_observers_) | 1134 for (auto& observer : shell_observers_) |
1116 observer.OnShellInitialized(); | 1135 observer.OnShellInitialized(); |
1117 | 1136 |
1118 if (config != Config::MASH) | 1137 if (config != Config::MASH) |
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1274 void Shell::OnPrefServiceInitialized( | 1293 void Shell::OnPrefServiceInitialized( |
1275 std::unique_ptr<::PrefService> pref_service) { | 1294 std::unique_ptr<::PrefService> pref_service) { |
1276 if (!instance_) | 1295 if (!instance_) |
1277 return; | 1296 return; |
1278 // |pref_service_| is null if can't connect to Chrome (as happens when | 1297 // |pref_service_| is null if can't connect to Chrome (as happens when |
1279 // running mash outside of chrome --mash and chrome isn't built). | 1298 // running mash outside of chrome --mash and chrome isn't built). |
1280 pref_service_ = std::move(pref_service); | 1299 pref_service_ = std::move(pref_service); |
1281 } | 1300 } |
1282 | 1301 |
1283 } // namespace ash | 1302 } // namespace ash |
OLD | NEW |