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 #ifndef ASH_TEST_SHELL_TEST_API_H_
6 #define ASH_TEST_SHELL_TEST_API_H_
8 #include "base/basictypes.h"
12 class InputMethodEventFilter;
17 class AshNativeCursorManager;
22 class AppListController;
23 class DragDropController;
24 class RootWindowLayoutManager;
25 class ScreenPositionController;
26 class SystemGestureEventFilter;
27 class WorkspaceController;
28 } // namespace internal
32 // Accesses private data from a Shell for testing.
35 explicit ShellTestApi(Shell* shell);
37 internal::RootWindowLayoutManager* root_window_layout();
38 views::corewm::InputMethodEventFilter* input_method_event_filter();
39 internal::SystemGestureEventFilter* system_gesture_event_filter();
40 internal::WorkspaceController* workspace_controller();
41 internal::ScreenPositionController* screen_position_controller();
42 AshNativeCursorManager* ash_native_cursor_manager();
43 LauncherModel* launcher_model();
44 internal::DragDropController* drag_drop_controller();
45 internal::AppListController* app_list_controller();
47 void DisableOutputConfiguratorAnimation();
50 Shell* shell_; // not owned
52 DISALLOW_COPY_AND_ASSIGN(ShellTestApi);
58 #endif // ASH_TEST_SHELL_TEST_API_H_