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

Side by Side Diff: ash/shell.cc

Issue 214693010: Remove USE_X11==1 check when including OutputConfigurator (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 6 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « ash/shell.h ('k') | ash/wm/lock_state_controller_unittest.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 9
10 #include "ash/accelerators/accelerator_controller.h" 10 #include "ash/accelerators/accelerator_controller.h"
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 #include "ui/wm/core/focus_controller.h" 106 #include "ui/wm/core/focus_controller.h"
107 #include "ui/wm/core/input_method_event_filter.h" 107 #include "ui/wm/core/input_method_event_filter.h"
108 #include "ui/wm/core/shadow_controller.h" 108 #include "ui/wm/core/shadow_controller.h"
109 #include "ui/wm/core/visibility_controller.h" 109 #include "ui/wm/core/visibility_controller.h"
110 #include "ui/wm/core/window_modality_controller.h" 110 #include "ui/wm/core/window_modality_controller.h"
111 111
112 #if defined(OS_CHROMEOS) 112 #if defined(OS_CHROMEOS)
113 #if defined(USE_X11) 113 #if defined(USE_X11)
114 #include "ash/accelerators/magnifier_key_scroller.h" 114 #include "ash/accelerators/magnifier_key_scroller.h"
115 #include "ash/accelerators/spoken_feedback_toggler.h" 115 #include "ash/accelerators/spoken_feedback_toggler.h"
116 #include "base/message_loop/message_pump_x11.h"
117 #endif // defined(USE_X11)
116 #include "ash/ash_constants.h" 118 #include "ash/ash_constants.h"
117 #include "ash/display/display_change_observer_chromeos.h" 119 #include "ash/display/display_change_observer_chromeos.h"
118 #include "ash/display/display_error_observer_chromeos.h" 120 #include "ash/display/display_error_observer_chromeos.h"
119 #include "ash/display/output_configurator_animation.h" 121 #include "ash/display/output_configurator_animation.h"
120 #include "ash/display/projecting_observer_chromeos.h" 122 #include "ash/display/projecting_observer_chromeos.h"
121 #include "ash/system/chromeos/session/last_window_closed_logout_reminder.h"
122 #include "base/message_loop/message_pump_x11.h"
123 #include "base/sys_info.h"
124 #include "ui/display/chromeos/output_configurator.h"
125 #endif // defined(USE_X11)
126 #include "ash/display/resolution_notification_controller.h" 123 #include "ash/display/resolution_notification_controller.h"
127 #include "ash/sticky_keys/sticky_keys_controller.h" 124 #include "ash/sticky_keys/sticky_keys_controller.h"
128 #include "ash/system/chromeos/bluetooth/bluetooth_notification_controller.h" 125 #include "ash/system/chromeos/bluetooth/bluetooth_notification_controller.h"
129 #include "ash/system/chromeos/brightness/brightness_controller_chromeos.h" 126 #include "ash/system/chromeos/brightness/brightness_controller_chromeos.h"
130 #include "ash/system/chromeos/power/power_event_observer.h" 127 #include "ash/system/chromeos/power/power_event_observer.h"
131 #include "ash/system/chromeos/power/power_status.h" 128 #include "ash/system/chromeos/power/power_status.h"
132 #include "ash/system/chromeos/power/user_activity_notifier.h" 129 #include "ash/system/chromeos/power/user_activity_notifier.h"
133 #include "ash/system/chromeos/power/video_activity_notifier.h" 130 #include "ash/system/chromeos/power/video_activity_notifier.h"
131 #include "ash/system/chromeos/session/last_window_closed_logout_reminder.h"
134 #include "ash/system/chromeos/session/logout_confirmation_controller.h" 132 #include "ash/system/chromeos/session/logout_confirmation_controller.h"
135 #include "base/bind_helpers.h" 133 #include "base/bind_helpers.h"
134 #include "base/sys_info.h"
135 #include "ui/display/chromeos/output_configurator.h"
136 #endif // defined(OS_CHROMEOS) 136 #endif // defined(OS_CHROMEOS)
137 137
138 namespace ash { 138 namespace ash {
139 139
140 namespace { 140 namespace {
141 141
142 using aura::Window; 142 using aura::Window;
143 using views::Widget; 143 using views::Widget;
144 144
145 // A Corewm VisibilityController subclass that calls the Ash animation routine 145 // A Corewm VisibilityController subclass that calls the Ash animation routine
(...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after
599 599
600 //////////////////////////////////////////////////////////////////////////////// 600 ////////////////////////////////////////////////////////////////////////////////
601 // Shell, private: 601 // Shell, private:
602 602
603 Shell::Shell(ShellDelegate* delegate) 603 Shell::Shell(ShellDelegate* delegate)
604 : target_root_window_(NULL), 604 : target_root_window_(NULL),
605 scoped_target_root_window_(NULL), 605 scoped_target_root_window_(NULL),
606 delegate_(delegate), 606 delegate_(delegate),
607 window_positioner_(new WindowPositioner), 607 window_positioner_(new WindowPositioner),
608 activation_client_(NULL), 608 activation_client_(NULL),
609 #if defined(OS_CHROMEOS) && defined(USE_X11) 609 #if defined(OS_CHROMEOS)
610 output_configurator_(new ui::OutputConfigurator()), 610 output_configurator_(new ui::OutputConfigurator()),
611 #endif // defined(OS_CHROMEOS) && defined(USE_X11) 611 #endif // defined(OS_CHROMEOS)
612 native_cursor_manager_(new AshNativeCursorManager), 612 native_cursor_manager_(new AshNativeCursorManager),
613 cursor_manager_(scoped_ptr< ::wm::NativeCursorManager>( 613 cursor_manager_(
614 native_cursor_manager_)), 614 scoped_ptr< ::wm::NativeCursorManager>(native_cursor_manager_)),
615 simulate_modal_window_open_for_testing_(false), 615 simulate_modal_window_open_for_testing_(false),
616 is_touch_hud_projection_enabled_(false) { 616 is_touch_hud_projection_enabled_(false) {
617 DCHECK(delegate_.get()); 617 DCHECK(delegate_.get());
618 gpu_support_.reset(delegate_->CreateGPUSupport()); 618 gpu_support_.reset(delegate_->CreateGPUSupport());
619 display_manager_.reset(new internal::DisplayManager); 619 display_manager_.reset(new internal::DisplayManager);
620 display_controller_.reset(new DisplayController); 620 display_controller_.reset(new DisplayController);
621 #if defined(OS_CHROMEOS) && defined(USE_X11) 621 #if defined(OS_CHROMEOS) && defined(USE_X11)
622 user_metrics_recorder_.reset(new UserMetricsRecorder); 622 user_metrics_recorder_.reset(new UserMetricsRecorder);
623 #endif // defined(OS_CHROMEOS) 623 #endif // defined(OS_CHROMEOS)
624 624
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
755 display_manager_->CreateScreenForShutdown(); 755 display_manager_->CreateScreenForShutdown();
756 display_controller_->Shutdown(); 756 display_controller_->Shutdown();
757 display_controller_.reset(); 757 display_controller_.reset();
758 screen_position_controller_.reset(); 758 screen_position_controller_.reset();
759 759
760 keyboard_controller_.reset(); 760 keyboard_controller_.reset();
761 accessibility_delegate_.reset(); 761 accessibility_delegate_.reset();
762 new_window_delegate_.reset(); 762 new_window_delegate_.reset();
763 media_delegate_.reset(); 763 media_delegate_.reset();
764 764
765 #if defined(OS_CHROMEOS) && defined(USE_X11) 765 #if defined(OS_CHROMEOS)
766 if (display_change_observer_) 766 if (display_change_observer_)
767 output_configurator_->RemoveObserver(display_change_observer_.get()); 767 output_configurator_->RemoveObserver(display_change_observer_.get());
768 if (output_configurator_animation_) 768 if (output_configurator_animation_)
769 output_configurator_->RemoveObserver(output_configurator_animation_.get()); 769 output_configurator_->RemoveObserver(output_configurator_animation_.get());
770 if (display_error_observer_) 770 if (display_error_observer_)
771 output_configurator_->RemoveObserver(display_error_observer_.get()); 771 output_configurator_->RemoveObserver(display_error_observer_.get());
772 if (projecting_observer_) 772 if (projecting_observer_)
773 output_configurator_->RemoveObserver(projecting_observer_.get()); 773 output_configurator_->RemoveObserver(projecting_observer_.get());
774 display_change_observer_.reset(); 774 display_change_observer_.reset();
775 #endif // defined(OS_CHROMEOS) 775 #endif // defined(OS_CHROMEOS)
776 776
777 #if defined(OS_CHROMEOS) 777 #if defined(OS_CHROMEOS)
778 internal::PowerStatus::Shutdown(); 778 internal::PowerStatus::Shutdown();
779 #endif 779 #endif
780 780
781 DCHECK(instance_ == this); 781 DCHECK(instance_ == this);
782 instance_ = NULL; 782 instance_ = NULL;
783 } 783 }
784 784
785 void Shell::Init() { 785 void Shell::Init() {
786 delegate_->PreInit(); 786 delegate_->PreInit();
787 if (keyboard::IsKeyboardUsabilityExperimentEnabled()) { 787 if (keyboard::IsKeyboardUsabilityExperimentEnabled()) {
788 display_manager_->SetSecondDisplayMode( 788 display_manager_->SetSecondDisplayMode(
789 internal::DisplayManager::VIRTUAL_KEYBOARD); 789 internal::DisplayManager::VIRTUAL_KEYBOARD);
790 } 790 }
791 bool display_initialized = display_manager_->InitFromCommandLine(); 791 bool display_initialized = display_manager_->InitFromCommandLine();
792 #if defined(OS_CHROMEOS) && defined(USE_X11) 792 #if defined(OS_CHROMEOS)
793 output_configurator_->Init(!gpu_support_->IsPanelFittingDisabled()); 793 output_configurator_->Init(!gpu_support_->IsPanelFittingDisabled());
794 output_configurator_animation_.reset( 794 output_configurator_animation_.reset(
795 new internal::OutputConfiguratorAnimation()); 795 new internal::OutputConfiguratorAnimation());
796 output_configurator_->AddObserver(output_configurator_animation_.get()); 796 output_configurator_->AddObserver(output_configurator_animation_.get());
797 797
798 projecting_observer_.reset(new internal::ProjectingObserver()); 798 projecting_observer_.reset(new internal::ProjectingObserver());
799 output_configurator_->AddObserver(projecting_observer_.get()); 799 output_configurator_->AddObserver(projecting_observer_.get());
800 800
801 if (!display_initialized && base::SysInfo::IsRunningOnChromeOS()) { 801 if (!display_initialized && base::SysInfo::IsRunningOnChromeOS()) {
802 display_change_observer_.reset(new internal::DisplayChangeObserver); 802 display_change_observer_.reset(new internal::DisplayChangeObserver);
803 // Register |display_change_observer_| first so that the rest of 803 // Register |display_change_observer_| first so that the rest of
804 // observer gets invoked after the root windows are configured. 804 // observer gets invoked after the root windows are configured.
805 output_configurator_->AddObserver(display_change_observer_.get()); 805 output_configurator_->AddObserver(display_change_observer_.get());
806 display_error_observer_.reset(new internal::DisplayErrorObserver()); 806 display_error_observer_.reset(new internal::DisplayErrorObserver());
807 output_configurator_->AddObserver(display_error_observer_.get()); 807 output_configurator_->AddObserver(display_error_observer_.get());
808 output_configurator_->set_state_controller(display_change_observer_.get()); 808 output_configurator_->set_state_controller(display_change_observer_.get());
809 output_configurator_->set_mirroring_controller(display_manager_.get()); 809 output_configurator_->set_mirroring_controller(display_manager_.get());
810 output_configurator_->ForceInitialConfigure( 810 output_configurator_->ForceInitialConfigure(
811 delegate_->IsFirstRunAfterBoot() ? kChromeOsBootColor : 0); 811 delegate_->IsFirstRunAfterBoot() ? kChromeOsBootColor : 0);
812 display_initialized = true; 812 display_initialized = true;
813 } 813 }
814 #endif // defined(OS_CHROMEOS) && defined(USE_X11) 814 #endif // defined(OS_CHROMEOS)
815 if (!display_initialized) 815 if (!display_initialized)
816 display_manager_->InitDefaultDisplay(); 816 display_manager_->InitDefaultDisplay();
817 817
818 // Install the custom factory first so that views::FocusManagers for Tray, 818 // Install the custom factory first so that views::FocusManagers for Tray,
819 // Shelf, and WallPaper could be created by the factory. 819 // Shelf, and WallPaper could be created by the factory.
820 views::FocusManagerFactory::Install(new AshFocusManagerFactory); 820 views::FocusManagerFactory::Install(new AshFocusManagerFactory);
821 821
822 // Env creates the compositor. Historically it seems to have been implicitly 822 // Env creates the compositor. Historically it seems to have been implicitly
823 // initialized first by the ActivationController, but now that FocusController 823 // initialized first by the ActivationController, but now that FocusController
824 // no longer does this we need to do it explicitly. 824 // no longer does this we need to do it explicitly.
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
905 905
906 // The keyboard system must be initialized before the RootWindowController is 906 // The keyboard system must be initialized before the RootWindowController is
907 // created. 907 // created.
908 #if defined(OS_CHROMEOS) 908 #if defined(OS_CHROMEOS)
909 keyboard::InitializeKeyboard(); 909 keyboard::InitializeKeyboard();
910 #endif 910 #endif
911 911
912 lock_state_controller_.reset(new LockStateController); 912 lock_state_controller_.reset(new LockStateController);
913 power_button_controller_.reset(new PowerButtonController( 913 power_button_controller_.reset(new PowerButtonController(
914 lock_state_controller_.get())); 914 lock_state_controller_.get()));
915 #if defined(OS_CHROMEOS) && defined(USE_X11) 915 #if defined(OS_CHROMEOS)
916 // Pass the initial display state to PowerButtonController. 916 // Pass the initial display state to PowerButtonController.
917 power_button_controller_->OnDisplayModeChanged( 917 power_button_controller_->OnDisplayModeChanged(
918 output_configurator_->cached_outputs()); 918 output_configurator_->cached_outputs());
919 #endif 919 #endif
920 AddShellObserver(lock_state_controller_.get()); 920 AddShellObserver(lock_state_controller_.get());
921 921
922 drag_drop_controller_.reset(new internal::DragDropController); 922 drag_drop_controller_.reset(new internal::DragDropController);
923 mouse_cursor_filter_.reset(new internal::MouseCursorEventFilter()); 923 mouse_cursor_filter_.reset(new internal::MouseCursorEventFilter());
924 PrependPreTargetHandler(mouse_cursor_filter_.get()); 924 PrependPreTargetHandler(mouse_cursor_filter_.get());
925 925
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
1115 //////////////////////////////////////////////////////////////////////////////// 1115 ////////////////////////////////////////////////////////////////////////////////
1116 // Shell, aura::client::ActivationChangeObserver implementation: 1116 // Shell, aura::client::ActivationChangeObserver implementation:
1117 1117
1118 void Shell::OnWindowActivated(aura::Window* gained_active, 1118 void Shell::OnWindowActivated(aura::Window* gained_active,
1119 aura::Window* lost_active) { 1119 aura::Window* lost_active) {
1120 if (gained_active) 1120 if (gained_active)
1121 target_root_window_ = gained_active->GetRootWindow(); 1121 target_root_window_ = gained_active->GetRootWindow();
1122 } 1122 }
1123 1123
1124 } // namespace ash 1124 } // namespace ash
OLDNEW
« no previous file with comments | « ash/shell.h ('k') | ash/wm/lock_state_controller_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698