Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Side by Side Diff: ash/shell.cc

Issue 2932563002: Implement cursor changing on Mushrome (Closed)
Patch Set: oshima patch take 2 Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ash/shell.h ('k') | ash/test/cursor_manager_test_api.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 #include "ash/system/tray/system_tray_controller.h" 86 #include "ash/system/tray/system_tray_controller.h"
87 #include "ash/system/tray/system_tray_delegate.h" 87 #include "ash/system/tray/system_tray_delegate.h"
88 #include "ash/system/tray/system_tray_notifier.h" 88 #include "ash/system/tray/system_tray_notifier.h"
89 #include "ash/touch/ash_touch_transform_controller.h" 89 #include "ash/touch/ash_touch_transform_controller.h"
90 #include "ash/tray_action/tray_action.h" 90 #include "ash/tray_action/tray_action.h"
91 #include "ash/utility/screenshot_controller.h" 91 #include "ash/utility/screenshot_controller.h"
92 #include "ash/virtual_keyboard_controller.h" 92 #include "ash/virtual_keyboard_controller.h"
93 #include "ash/wallpaper/wallpaper_controller.h" 93 #include "ash/wallpaper/wallpaper_controller.h"
94 #include "ash/wallpaper/wallpaper_delegate.h" 94 #include "ash/wallpaper/wallpaper_delegate.h"
95 #include "ash/wm/ash_focus_rules.h" 95 #include "ash/wm/ash_focus_rules.h"
96 #include "ash/wm/ash_native_cursor_manager.h"
97 #include "ash/wm/container_finder.h" 96 #include "ash/wm/container_finder.h"
98 #include "ash/wm/event_client_impl.h" 97 #include "ash/wm/event_client_impl.h"
99 #include "ash/wm/immersive_context_ash.h" 98 #include "ash/wm/immersive_context_ash.h"
100 #include "ash/wm/immersive_handler_factory_ash.h" 99 #include "ash/wm/immersive_handler_factory_ash.h"
101 #include "ash/wm/lock_state_controller.h" 100 #include "ash/wm/lock_state_controller.h"
102 #include "ash/wm/maximize_mode/maximize_mode_controller.h" 101 #include "ash/wm/maximize_mode/maximize_mode_controller.h"
103 #include "ash/wm/maximize_mode/maximize_mode_window_manager.h" 102 #include "ash/wm/maximize_mode/maximize_mode_window_manager.h"
104 #include "ash/wm/mru_window_tracker.h" 103 #include "ash/wm/mru_window_tracker.h"
104 #include "ash/wm/native_cursor_manager_ash_classic.h"
105 #include "ash/wm/native_cursor_manager_ash_mus.h"
105 #include "ash/wm/overlay_event_filter.h" 106 #include "ash/wm/overlay_event_filter.h"
106 #include "ash/wm/overview/window_selector_controller.h" 107 #include "ash/wm/overview/window_selector_controller.h"
107 #include "ash/wm/power_button_controller.h" 108 #include "ash/wm/power_button_controller.h"
108 #include "ash/wm/resize_shadow_controller.h" 109 #include "ash/wm/resize_shadow_controller.h"
109 #include "ash/wm/root_window_finder.h" 110 #include "ash/wm/root_window_finder.h"
110 #include "ash/wm/screen_pinning_controller.h" 111 #include "ash/wm/screen_pinning_controller.h"
111 #include "ash/wm/system_gesture_event_filter.h" 112 #include "ash/wm/system_gesture_event_filter.h"
112 #include "ash/wm/system_modal_container_event_filter.h" 113 #include "ash/wm/system_modal_container_event_filter.h"
113 #include "ash/wm/system_modal_container_layout_manager.h" 114 #include "ash/wm/system_modal_container_layout_manager.h"
114 #include "ash/wm/toplevel_window_event_handler.h" 115 #include "ash/wm/toplevel_window_event_handler.h"
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after
446 FirstRunHelper* Shell::CreateFirstRunHelper() { 447 FirstRunHelper* Shell::CreateFirstRunHelper() {
447 return new FirstRunHelperImpl; 448 return new FirstRunHelperImpl;
448 } 449 }
449 450
450 void Shell::SetLargeCursorSizeInDip(int large_cursor_size_in_dip) { 451 void Shell::SetLargeCursorSizeInDip(int large_cursor_size_in_dip) {
451 window_tree_host_manager_->cursor_window_controller() 452 window_tree_host_manager_->cursor_window_controller()
452 ->SetLargeCursorSizeInDip(large_cursor_size_in_dip); 453 ->SetLargeCursorSizeInDip(large_cursor_size_in_dip);
453 } 454 }
454 455
455 void Shell::SetCursorCompositingEnabled(bool enabled) { 456 void Shell::SetCursorCompositingEnabled(bool enabled) {
456 if (GetAshConfig() == Config::CLASSIC) { 457 if (GetAshConfig() != Config::MASH) {
457 // TODO: needs to work in mus. http://crbug.com/705592. 458 // TODO: needs to work in mash. http://crbug.com/705592.
458 window_tree_host_manager_->cursor_window_controller() 459 window_tree_host_manager_->cursor_window_controller()
459 ->SetCursorCompositingEnabled(enabled); 460 ->SetCursorCompositingEnabled(enabled);
460 native_cursor_manager_->SetNativeCursorEnabled(!enabled); 461 native_cursor_manager_->SetNativeCursorEnabled(!enabled);
461 } 462 }
462 } 463 }
463 464
464 void Shell::DoInitialWorkspaceAnimation() { 465 void Shell::DoInitialWorkspaceAnimation() {
465 return GetPrimaryRootWindowController() 466 return GetPrimaryRootWindowController()
466 ->workspace_controller() 467 ->workspace_controller()
467 ->DoInitialAnimation(); 468 ->DoInitialAnimation();
(...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after
871 if (config == Config::MASH) 872 if (config == Config::MASH)
872 app_list_delegate_impl_ = base::MakeUnique<AppListDelegateImpl>(); 873 app_list_delegate_impl_ = base::MakeUnique<AppListDelegateImpl>();
873 874
874 // TODO(sky): move creation to ShellPort. 875 // TODO(sky): move creation to ShellPort.
875 if (config != Config::MASH) 876 if (config != Config::MASH)
876 immersive_handler_factory_ = base::MakeUnique<ImmersiveHandlerFactoryAsh>(); 877 immersive_handler_factory_ = base::MakeUnique<ImmersiveHandlerFactoryAsh>();
877 878
878 window_positioner_ = base::MakeUnique<WindowPositioner>(); 879 window_positioner_ = base::MakeUnique<WindowPositioner>();
879 880
880 if (config == Config::CLASSIC) { 881 if (config == Config::CLASSIC) {
881 // TODO: needs to work in mus. http://crbug.com/705592. 882 native_cursor_manager_ = new NativeCursorManagerAshClassic;
882 native_cursor_manager_ = new AshNativeCursorManager; 883 cursor_manager_ = base::MakeUnique<CursorManager>(
883 cursor_manager_.reset( 884 base::WrapUnique(native_cursor_manager_));
884 new CursorManager(base::WrapUnique(native_cursor_manager_))); 885 } else if (config == Config::MUS) {
886 native_cursor_manager_ = new NativeCursorManagerAshMus;
887 cursor_manager_ = base::MakeUnique<CursorManager>(
888 base::WrapUnique(native_cursor_manager_));
885 } 889 }
886 890
887 shell_delegate_->PreInit(); 891 shell_delegate_->PreInit();
888 bool display_initialized = (!ShouldEnableSimplifiedDisplayManagement() || 892 bool display_initialized = (!ShouldEnableSimplifiedDisplayManagement() ||
889 display_manager_->InitFromCommandLine()); 893 display_manager_->InitFromCommandLine());
890 if (!display_initialized && config != Config::CLASSIC && 894 if (!display_initialized && config != Config::CLASSIC &&
891 ShouldEnableSimplifiedDisplayManagement()) { 895 ShouldEnableSimplifiedDisplayManagement()) {
892 // Run display configuration off device in mus mode. 896 // Run display configuration off device in mus mode.
893 display_manager_->set_configure_displays(true); 897 display_manager_->set_configure_displays(true);
894 display_configurator_->set_configure_display(true); 898 display_configurator_->set_configure_display(true);
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after
1287 void Shell::OnPrefServiceInitialized( 1291 void Shell::OnPrefServiceInitialized(
1288 std::unique_ptr<::PrefService> pref_service) { 1292 std::unique_ptr<::PrefService> pref_service) {
1289 if (!instance_) 1293 if (!instance_)
1290 return; 1294 return;
1291 // |pref_service_| is null if can't connect to Chrome (as happens when 1295 // |pref_service_| is null if can't connect to Chrome (as happens when
1292 // running mash outside of chrome --mash and chrome isn't built). 1296 // running mash outside of chrome --mash and chrome isn't built).
1293 pref_service_ = std::move(pref_service); 1297 pref_service_ = std::move(pref_service);
1294 } 1298 }
1295 1299
1296 } // namespace ash 1300 } // namespace ash
OLDNEW
« no previous file with comments | « ash/shell.h ('k') | ash/test/cursor_manager_test_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698