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
;
23 class AppListController
;
24 class DragDropController
;
25 class RootWindowLayoutManager
;
26 class ScreenPositionController
;
27 class SystemGestureEventFilter
;
28 class WorkspaceController
;
29 } // namespace internal
33 // Accesses private data from a Shell for testing.
36 explicit ShellTestApi(Shell
* shell
);
38 internal::RootWindowLayoutManager
* root_window_layout();
39 views::corewm::InputMethodEventFilter
* input_method_event_filter();
40 internal::SystemGestureEventFilter
* system_gesture_event_filter();
41 internal::WorkspaceController
* workspace_controller();
42 internal::ScreenPositionController
* screen_position_controller();
43 AshNativeCursorManager
* ash_native_cursor_manager();
44 ShelfModel
* shelf_model();
45 internal::DragDropController
* drag_drop_controller();
46 internal::AppListController
* app_list_controller();
48 void DisableOutputConfiguratorAnimation();
51 void SetShelfDelegate(ShelfDelegate
* delegate
);
54 Shell
* shell_
; // not owned
56 DISALLOW_COPY_AND_ASSIGN(ShellTestApi
);
62 #endif // ASH_TEST_SHELL_TEST_API_H_