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 | 9 |
10 #include "ash/accelerators/accelerator_controller.h" | 10 #include "ash/accelerators/accelerator_controller.h" |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 #include "ui/views/focus/focus_manager_factory.h" | 112 #include "ui/views/focus/focus_manager_factory.h" |
113 #include "ui/views/widget/native_widget_aura.h" | 113 #include "ui/views/widget/native_widget_aura.h" |
114 #include "ui/views/widget/widget.h" | 114 #include "ui/views/widget/widget.h" |
115 | 115 |
116 #if defined(OS_CHROMEOS) | 116 #if defined(OS_CHROMEOS) |
117 #if defined(USE_X11) | 117 #if defined(USE_X11) |
118 #include "ash/ash_constants.h" | 118 #include "ash/ash_constants.h" |
119 #include "ash/display/display_change_observer_chromeos.h" | 119 #include "ash/display/display_change_observer_chromeos.h" |
120 #include "ash/display/display_error_observer_chromeos.h" | 120 #include "ash/display/display_error_observer_chromeos.h" |
121 #include "ash/display/output_configurator_animation.h" | 121 #include "ash/display/output_configurator_animation.h" |
| 122 #include "ash/magnifier/magnifier_key_scroller.h" |
122 #include "base/message_loop/message_pump_x11.h" | 123 #include "base/message_loop/message_pump_x11.h" |
123 #include "base/sys_info.h" | 124 #include "base/sys_info.h" |
124 #include "chromeos/display/output_configurator.h" | 125 #include "chromeos/display/output_configurator.h" |
125 #endif // defined(USE_X11) | 126 #endif // defined(USE_X11) |
126 #include "ash/display/resolution_notification_controller.h" | 127 #include "ash/display/resolution_notification_controller.h" |
127 #include "ash/sticky_keys/sticky_keys_controller.h" | 128 #include "ash/sticky_keys/sticky_keys_controller.h" |
128 #include "ash/system/chromeos/brightness/brightness_controller_chromeos.h" | 129 #include "ash/system/chromeos/brightness/brightness_controller_chromeos.h" |
129 #include "ash/system/chromeos/power/power_event_observer.h" | 130 #include "ash/system/chromeos/power/power_event_observer.h" |
130 #include "ash/system/chromeos/power/power_status.h" | 131 #include "ash/system/chromeos/power/power_status.h" |
131 #include "ash/system/chromeos/power/user_activity_notifier.h" | 132 #include "ash/system/chromeos/power/user_activity_notifier.h" |
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
603 views::FocusManagerFactory::Install(NULL); | 604 views::FocusManagerFactory::Install(NULL); |
604 | 605 |
605 // Remove the focus from any window. This will prevent overhead and side | 606 // Remove the focus from any window. This will prevent overhead and side |
606 // effects (e.g. crashes) from changing focus during shutdown. | 607 // effects (e.g. crashes) from changing focus during shutdown. |
607 // See bug crbug.com/134502. | 608 // See bug crbug.com/134502. |
608 aura::client::GetFocusClient(GetPrimaryRootWindow())->FocusWindow(NULL); | 609 aura::client::GetFocusClient(GetPrimaryRootWindow())->FocusWindow(NULL); |
609 | 610 |
610 // Please keep in same order as in Init() because it's easy to miss one. | 611 // Please keep in same order as in Init() because it's easy to miss one. |
611 if (window_modality_controller_) | 612 if (window_modality_controller_) |
612 window_modality_controller_.reset(); | 613 window_modality_controller_.reset(); |
| 614 #if defined(OS_CHROMEOS) && defined(USE_X11) |
| 615 RemovePreTargetHandler(magnifier_key_scroller_.get()); |
| 616 magnifier_key_scroller_.reset(); |
| 617 #endif |
613 RemovePreTargetHandler(event_rewriter_filter_.get()); | 618 RemovePreTargetHandler(event_rewriter_filter_.get()); |
614 RemovePreTargetHandler(user_activity_detector_.get()); | 619 RemovePreTargetHandler(user_activity_detector_.get()); |
615 RemovePreTargetHandler(overlay_filter_.get()); | 620 RemovePreTargetHandler(overlay_filter_.get()); |
616 RemovePreTargetHandler(input_method_filter_.get()); | 621 RemovePreTargetHandler(input_method_filter_.get()); |
617 RemovePreTargetHandler(accelerator_filter_.get()); | 622 RemovePreTargetHandler(accelerator_filter_.get()); |
618 RemovePreTargetHandler(event_transformation_handler_.get()); | 623 RemovePreTargetHandler(event_transformation_handler_.get()); |
619 RemovePreTargetHandler(toplevel_window_event_handler_.get()); | 624 RemovePreTargetHandler(toplevel_window_event_handler_.get()); |
620 RemovePostTargetHandler(toplevel_window_event_handler_.get()); | 625 RemovePostTargetHandler(toplevel_window_event_handler_.get()); |
621 RemovePreTargetHandler(system_gesture_filter_.get()); | 626 RemovePreTargetHandler(system_gesture_filter_.get()); |
622 RemovePreTargetHandler(keyboard_metrics_filter_.get()); | 627 RemovePreTargetHandler(keyboard_metrics_filter_.get()); |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
803 #if defined(OS_CHROMEOS) | 808 #if defined(OS_CHROMEOS) |
804 resolution_notification_controller_.reset( | 809 resolution_notification_controller_.reset( |
805 new internal::ResolutionNotificationController); | 810 new internal::ResolutionNotificationController); |
806 #endif | 811 #endif |
807 | 812 |
808 cursor_manager_.SetDisplay(GetScreen()->GetPrimaryDisplay()); | 813 cursor_manager_.SetDisplay(GetScreen()->GetPrimaryDisplay()); |
809 | 814 |
810 nested_dispatcher_controller_.reset(new NestedDispatcherController); | 815 nested_dispatcher_controller_.reset(new NestedDispatcherController); |
811 accelerator_controller_.reset(new AcceleratorController); | 816 accelerator_controller_.reset(new AcceleratorController); |
812 | 817 |
| 818 #if defined(OS_CHROMEOS) && defined(USE_X11) |
| 819 magnifier_key_scroller_.reset(new MagnifierKeyScroller); |
| 820 AddPreTargetHandler(magnifier_key_scroller_.get()); |
| 821 #endif |
| 822 |
813 // The order in which event filters are added is significant. | 823 // The order in which event filters are added is significant. |
814 event_rewriter_filter_.reset(new internal::EventRewriterEventFilter); | 824 event_rewriter_filter_.reset(new internal::EventRewriterEventFilter); |
815 AddPreTargetHandler(event_rewriter_filter_.get()); | 825 AddPreTargetHandler(event_rewriter_filter_.get()); |
816 | 826 |
817 #if defined(OS_CHROMEOS) | 827 #if defined(OS_CHROMEOS) |
818 // The StickyKeysController also rewrites events and must be added | 828 // The StickyKeysController also rewrites events and must be added |
819 // before observers, but after the EventRewriterEventFilter. | 829 // before observers, but after the EventRewriterEventFilter. |
820 sticky_keys_controller_.reset(new StickyKeysController); | 830 sticky_keys_controller_.reset(new StickyKeysController); |
821 AddPreTargetHandler(sticky_keys_controller_.get()); | 831 AddPreTargetHandler(sticky_keys_controller_.get()); |
822 #endif | 832 #endif |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1053 //////////////////////////////////////////////////////////////////////////////// | 1063 //////////////////////////////////////////////////////////////////////////////// |
1054 // Shell, aura::client::ActivationChangeObserver implementation: | 1064 // Shell, aura::client::ActivationChangeObserver implementation: |
1055 | 1065 |
1056 void Shell::OnWindowActivated(aura::Window* gained_active, | 1066 void Shell::OnWindowActivated(aura::Window* gained_active, |
1057 aura::Window* lost_active) { | 1067 aura::Window* lost_active) { |
1058 if (gained_active) | 1068 if (gained_active) |
1059 target_root_window_ = gained_active->GetRootWindow(); | 1069 target_root_window_ = gained_active->GetRootWindow(); |
1060 } | 1070 } |
1061 | 1071 |
1062 } // namespace ash | 1072 } // namespace ash |
OLD | NEW |