Added llvm into exceptions as we can't add README.chromium into 3rd party repository
[chromium-blink-merge.git] / ash / test / shell_test_api.h
blob16cc576c4d36f2621cdda29de718861d38be803f
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"
10 namespace wm {
11 class InputMethodEventFilter;
12 } // namespace wm
14 namespace ash {
15 class AppListController;
16 class AshNativeCursorManager;
17 class DragDropController;
18 class MaximizeModeWindowManager;
19 class RootWindowLayoutManager;
20 class SessionStateDelegate;
21 class ScreenPositionController;
22 class ShelfDelegate;
23 class ShelfModel;
24 class Shell;
25 class SystemGestureEventFilter;
26 class WorkspaceController;
28 namespace test {
30 // Accesses private data from a Shell for testing.
31 class ShellTestApi {
32 public:
33 explicit ShellTestApi(Shell* shell);
35 RootWindowLayoutManager* root_window_layout();
36 ::wm::InputMethodEventFilter* input_method_event_filter();
37 SystemGestureEventFilter* system_gesture_event_filter();
38 WorkspaceController* workspace_controller();
39 ScreenPositionController* screen_position_controller();
40 AshNativeCursorManager* ash_native_cursor_manager();
41 ShelfModel* shelf_model();
42 DragDropController* drag_drop_controller();
43 AppListController* app_list_controller();
44 MaximizeModeWindowManager* maximize_mode_window_manager();
45 void DisableDisplayConfiguratorAnimation();
47 // Set ShelfDelegate.
48 void SetShelfDelegate(ShelfDelegate* delegate);
50 // Set SessionStateDelegate.
51 void SetSessionStateDelegate(SessionStateDelegate* session_state_delegate);
53 private:
54 Shell* shell_; // not owned
56 DISALLOW_COPY_AND_ASSIGN(ShellTestApi);
59 } // namespace test
60 } // namespace ash
62 #endif // ASH_TEST_SHELL_TEST_API_H_