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

Side by Side Diff: trunk/src/ash/shell.cc

Issue 186123004: Revert 255385 "aura: Remove client::UserActionClient." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 9 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 | « trunk/src/ash/shell.h ('k') | trunk/src/ash/shell/shell_delegate_impl.h » ('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 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 #include "ash/wm/window_cycle_controller.h" 78 #include "ash/wm/window_cycle_controller.h"
79 #include "ash/wm/window_positioner.h" 79 #include "ash/wm/window_positioner.h"
80 #include "ash/wm/window_properties.h" 80 #include "ash/wm/window_properties.h"
81 #include "ash/wm/window_util.h" 81 #include "ash/wm/window_util.h"
82 #include "ash/wm/workspace_controller.h" 82 #include "ash/wm/workspace_controller.h"
83 #include "base/bind.h" 83 #include "base/bind.h"
84 #include "base/bind_helpers.h" 84 #include "base/bind_helpers.h"
85 #include "base/command_line.h" 85 #include "base/command_line.h"
86 #include "base/debug/trace_event.h" 86 #include "base/debug/trace_event.h"
87 #include "ui/aura/client/aura_constants.h" 87 #include "ui/aura/client/aura_constants.h"
88 #include "ui/aura/client/user_action_client.h"
88 #include "ui/aura/env.h" 89 #include "ui/aura/env.h"
89 #include "ui/aura/layout_manager.h" 90 #include "ui/aura/layout_manager.h"
90 #include "ui/aura/window.h" 91 #include "ui/aura/window.h"
91 #include "ui/aura/window_event_dispatcher.h" 92 #include "ui/aura/window_event_dispatcher.h"
92 #include "ui/base/ui_base_switches.h" 93 #include "ui/base/ui_base_switches.h"
93 #include "ui/compositor/layer.h" 94 #include "ui/compositor/layer.h"
94 #include "ui/compositor/layer_animator.h" 95 #include "ui/compositor/layer_animator.h"
95 #include "ui/events/event_target_iterator.h" 96 #include "ui/events/event_target_iterator.h"
96 #include "ui/gfx/display.h" 97 #include "ui/gfx/display.h"
97 #include "ui/gfx/image/image_skia.h" 98 #include "ui/gfx/image/image_skia.h"
(...skipping 618 matching lines...) Expand 10 before | Expand all | Expand 10 after
716 717
717 // These need a valid Shell instance to clean up properly, so explicitly 718 // These need a valid Shell instance to clean up properly, so explicitly
718 // delete them before invalidating the instance. 719 // delete them before invalidating the instance.
719 // Alphabetical. TODO(oshima): sort. 720 // Alphabetical. TODO(oshima): sort.
720 magnification_controller_.reset(); 721 magnification_controller_.reset();
721 partial_magnification_controller_.reset(); 722 partial_magnification_controller_.reset();
722 tooltip_controller_.reset(); 723 tooltip_controller_.reset();
723 event_client_.reset(); 724 event_client_.reset();
724 nested_dispatcher_controller_.reset(); 725 nested_dispatcher_controller_.reset();
725 toplevel_window_event_handler_.reset(); 726 toplevel_window_event_handler_.reset();
727 user_action_client_.reset();
726 visibility_controller_.reset(); 728 visibility_controller_.reset();
727 // |shelf_item_delegate_manager_| observes |shelf_model_|. It must be 729 // |shelf_item_delegate_manager_| observes |shelf_model_|. It must be
728 // destroyed before |shelf_model_| is destroyed. 730 // destroyed before |shelf_model_| is destroyed.
729 shelf_item_delegate_manager_.reset(); 731 shelf_item_delegate_manager_.reset();
730 shelf_model_.reset(); 732 shelf_model_.reset();
731 733
732 power_button_controller_.reset(); 734 power_button_controller_.reset();
733 lock_state_controller_.reset(); 735 lock_state_controller_.reset();
734 736
735 #if defined(OS_CHROMEOS) 737 #if defined(OS_CHROMEOS)
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
910 AddShellObserver(lock_state_controller_.get()); 912 AddShellObserver(lock_state_controller_.get());
911 913
912 drag_drop_controller_.reset(new internal::DragDropController); 914 drag_drop_controller_.reset(new internal::DragDropController);
913 mouse_cursor_filter_.reset(new internal::MouseCursorEventFilter()); 915 mouse_cursor_filter_.reset(new internal::MouseCursorEventFilter());
914 PrependPreTargetHandler(mouse_cursor_filter_.get()); 916 PrependPreTargetHandler(mouse_cursor_filter_.get());
915 917
916 // Create Controllers that may need root window. 918 // Create Controllers that may need root window.
917 // TODO(oshima): Move as many controllers before creating 919 // TODO(oshima): Move as many controllers before creating
918 // RootWindowController as possible. 920 // RootWindowController as possible.
919 visibility_controller_.reset(new AshVisibilityController); 921 visibility_controller_.reset(new AshVisibilityController);
922 user_action_client_.reset(delegate_->CreateUserActionClient());
920 923
921 magnification_controller_.reset( 924 magnification_controller_.reset(
922 MagnificationController::CreateInstance()); 925 MagnificationController::CreateInstance());
923 mru_window_tracker_.reset(new MruWindowTracker(activation_client_)); 926 mru_window_tracker_.reset(new MruWindowTracker(activation_client_));
924 927
925 partial_magnification_controller_.reset( 928 partial_magnification_controller_.reset(
926 new PartialMagnificationController()); 929 new PartialMagnificationController());
927 930
928 autoclick_controller_.reset(AutoclickController::CreateInstance()); 931 autoclick_controller_.reset(AutoclickController::CreateInstance());
929 932
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
1061 1064
1062 aura::client::SetWindowMoveClient(root_window, 1065 aura::client::SetWindowMoveClient(root_window,
1063 toplevel_window_event_handler_.get()); 1066 toplevel_window_event_handler_.get());
1064 root_window->AddPreTargetHandler(toplevel_window_event_handler_.get()); 1067 root_window->AddPreTargetHandler(toplevel_window_event_handler_.get());
1065 root_window->AddPostTargetHandler(toplevel_window_event_handler_.get()); 1068 root_window->AddPostTargetHandler(toplevel_window_event_handler_.get());
1066 1069
1067 if (nested_dispatcher_controller_) { 1070 if (nested_dispatcher_controller_) {
1068 aura::client::SetDispatcherClient(root_window, 1071 aura::client::SetDispatcherClient(root_window,
1069 nested_dispatcher_controller_.get()); 1072 nested_dispatcher_controller_.get());
1070 } 1073 }
1074 if (user_action_client_)
1075 aura::client::SetUserActionClient(root_window, user_action_client_.get());
1071 } 1076 }
1072 1077
1073 bool Shell::CanWindowReceiveEvents(aura::Window* window) { 1078 bool Shell::CanWindowReceiveEvents(aura::Window* window) {
1074 RootWindowControllerList controllers = GetAllRootWindowControllers(); 1079 RootWindowControllerList controllers = GetAllRootWindowControllers();
1075 for (RootWindowControllerList::iterator iter = controllers.begin(); 1080 for (RootWindowControllerList::iterator iter = controllers.begin();
1076 iter != controllers.end(); ++iter) { 1081 iter != controllers.end(); ++iter) {
1077 internal::SystemModalContainerLayoutManager* layout_manager = 1082 internal::SystemModalContainerLayoutManager* layout_manager =
1078 (*iter)->GetSystemModalLayoutManager(window); 1083 (*iter)->GetSystemModalLayoutManager(window);
1079 if (layout_manager && layout_manager->CanWindowReceiveEvents(window)) 1084 if (layout_manager && layout_manager->CanWindowReceiveEvents(window))
1080 return true; 1085 return true;
(...skipping 27 matching lines...) Expand all
1108 //////////////////////////////////////////////////////////////////////////////// 1113 ////////////////////////////////////////////////////////////////////////////////
1109 // Shell, aura::client::ActivationChangeObserver implementation: 1114 // Shell, aura::client::ActivationChangeObserver implementation:
1110 1115
1111 void Shell::OnWindowActivated(aura::Window* gained_active, 1116 void Shell::OnWindowActivated(aura::Window* gained_active,
1112 aura::Window* lost_active) { 1117 aura::Window* lost_active) {
1113 if (gained_active) 1118 if (gained_active)
1114 target_root_window_ = gained_active->GetRootWindow(); 1119 target_root_window_ = gained_active->GetRootWindow();
1115 } 1120 }
1116 1121
1117 } // namespace ash 1122 } // namespace ash
OLDNEW
« no previous file with comments | « trunk/src/ash/shell.h ('k') | trunk/src/ash/shell/shell_delegate_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698