[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 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. | ||||
4 | |||||
James Cook | 346c8c6 | 2017-07-18 19:38:37 | [diff] [blame^] | 5 | #ifndef ASH_SHELL_TEST_API_H_ |
6 | #define ASH_SHELL_TEST_API_H_ | ||||
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 7 | |
sky | 07a24d4 | 2017-03-09 23:57:30 | [diff] [blame] | 8 | #include <memory> |
9 | |||||
avi | db567a8a | 2015-12-20 17:07:24 | [diff] [blame] | 10 | #include "base/macros.h" |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 11 | |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 12 | namespace ash { |
erg | 36cfb95 | 2017-06-21 19:41:45 | [diff] [blame] | 13 | class NativeCursorManagerAsh; |
[email protected] | c086bab | 2013-06-06 21:46:44 | [diff] [blame] | 14 | class DragDropController; |
oshima | 341337af | 2017-05-26 23:34:23 | [diff] [blame] | 15 | class MaximizeModeWindowManager; |
sky | 07a24d4 | 2017-03-09 23:57:30 | [diff] [blame] | 16 | class PaletteDelegate; |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 17 | class ScreenPositionController; |
[email protected] | 093b8d64 | 2014-04-03 20:59:28 | [diff] [blame] | 18 | class Shell; |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 19 | class SystemGestureEventFilter; |
20 | class WorkspaceController; | ||||
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 21 | |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 22 | // Accesses private data from a Shell for testing. |
23 | class ShellTestApi { | ||||
jamescook | b8dcef52 | 2016-06-25 14:42:55 | [diff] [blame] | 24 | public: |
sky | 07a24d4 | 2017-03-09 23:57:30 | [diff] [blame] | 25 | ShellTestApi(); |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 26 | explicit ShellTestApi(Shell* shell); |
27 | |||||
[email protected] | 093b8d64 | 2014-04-03 20:59:28 | [diff] [blame] | 28 | SystemGestureEventFilter* system_gesture_event_filter(); |
29 | WorkspaceController* workspace_controller(); | ||||
30 | ScreenPositionController* screen_position_controller(); | ||||
erg | 36cfb95 | 2017-06-21 19:41:45 | [diff] [blame] | 31 | NativeCursorManagerAsh* native_cursor_manager_ash(); |
[email protected] | 093b8d64 | 2014-04-03 20:59:28 | [diff] [blame] | 32 | DragDropController* drag_drop_controller(); |
oshima | 341337af | 2017-05-26 23:34:23 | [diff] [blame] | 33 | MaximizeModeWindowManager* maximize_mode_window_manager(); |
[email protected] | 945ece96 | 2013-03-21 06:42:39 | [diff] [blame] | 34 | |
sky | 07a24d4 | 2017-03-09 23:57:30 | [diff] [blame] | 35 | void SetPaletteDelegate(std::unique_ptr<PaletteDelegate> palette_delegate); |
[email protected] | 7570bba | 2014-08-08 08:04:47 | [diff] [blame] | 36 | |
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 37 | private: |
38 | Shell* shell_; // not owned | ||||
39 | |||||
40 | DISALLOW_COPY_AND_ASSIGN(ShellTestApi); | ||||
41 | }; | ||||
42 | |||||
[email protected] | 0c68e89 | 2012-12-08 16:54:53 | [diff] [blame] | 43 | } // namespace ash |
44 | |||||
James Cook | 346c8c6 | 2017-07-18 19:38:37 | [diff] [blame^] | 45 | #endif // ASH_SHELL_TEST_API_H_ |