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
3 // found in the LICENSE file.
5 #include "ash/test/shell_test_api.h"
7 #include "ash/root_window_controller.h"
8 #include "ash/session/session_state_delegate.h"
9 #include "ash/shelf/shelf_delegate.h"
10 #include "ash/shell.h"
12 #if defined(OS_CHROMEOS)
13 #include "ash/display/display_configurator_animation.h"
14 #include "ui/display/chromeos/display_configurator.h"
20 ShellTestApi::ShellTestApi(Shell
* shell
) : shell_(shell
) {}
22 RootWindowLayoutManager
* ShellTestApi::root_window_layout() {
23 return shell_
->GetPrimaryRootWindowController()->root_window_layout();
26 wm::InputMethodEventFilter
*
27 ShellTestApi::input_method_event_filter() {
28 return shell_
->input_method_filter_
.get();
31 SystemGestureEventFilter
* ShellTestApi::system_gesture_event_filter() {
32 return shell_
->system_gesture_filter_
.get();
35 WorkspaceController
* ShellTestApi::workspace_controller() {
36 return shell_
->GetPrimaryRootWindowController()->workspace_controller();
39 ScreenPositionController
* ShellTestApi::screen_position_controller() {
40 return shell_
->screen_position_controller_
.get();
43 AshNativeCursorManager
* ShellTestApi::ash_native_cursor_manager() {
44 return shell_
->native_cursor_manager_
;
47 ShelfModel
* ShellTestApi::shelf_model() {
48 return shell_
->shelf_model_
.get();
51 DragDropController
* ShellTestApi::drag_drop_controller() {
52 return shell_
->drag_drop_controller_
.get();
55 AppListController
* ShellTestApi::app_list_controller() {
56 return shell_
->app_list_controller_
.get();
59 void ShellTestApi::DisableDisplayConfiguratorAnimation() {
60 #if defined(OS_CHROMEOS)
61 if (shell_
->display_configurator_animation_
) {
62 shell_
->display_configurator_
->RemoveObserver(
63 shell_
->display_configurator_animation_
.get());
64 shell_
->display_configurator_animation_
.reset();
66 #endif // defined(OS_CHROMEOS)
69 void ShellTestApi::SetShelfDelegate(ShelfDelegate
* delegate
) {
70 shell_
->shelf_delegate_
.reset(delegate
);
73 void ShellTestApi::SetSessionStateDelegate(
74 SessionStateDelegate
* session_state_delegate
) {
75 shell_
->session_state_delegate_
.reset(session_state_delegate
);