shell_test_api.h revision f2477e01787aa58f445919b809d89e252beef54f
12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#ifndef ASH_TEST_SHELL_TEST_API_H_ 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define ASH_TEST_SHELL_TEST_API_H_ 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/basictypes.h" 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace views { 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace corewm { 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class InputMethodEventFilter; 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace corewm 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace views 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace ash { 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class AshNativeCursorManager; 18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)class LauncherDelegate; 19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)class ShelfModel; 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class Shell; 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace internal { 2358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class AppListController; 24868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)class DragDropController; 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class RootWindowLayoutManager; 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class ScreenPositionController; 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class SystemGestureEventFilter; 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class WorkspaceController; 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace internal 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace test { 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Accesses private data from a Shell for testing. 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class ShellTestApi { 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)public: 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) explicit ShellTestApi(Shell* shell); 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) internal::RootWindowLayoutManager* root_window_layout(); 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) views::corewm::InputMethodEventFilter* input_method_event_filter(); 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) internal::SystemGestureEventFilter* system_gesture_event_filter(); 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) internal::WorkspaceController* workspace_controller(); 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) internal::ScreenPositionController* screen_position_controller(); 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) AshNativeCursorManager* ash_native_cursor_manager(); 44f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) ShelfModel* shelf_model(); 45868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) internal::DragDropController* drag_drop_controller(); 4658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) internal::AppListController* app_list_controller(); 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) void DisableOutputConfiguratorAnimation(); 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 50f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) // Set LauncherDelegate. 51f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) void SetLauncherDelegate(LauncherDelegate* delegate); 52f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private: 542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) Shell* shell_; // not owned 552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(ShellTestApi); 572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}; 582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace test 602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace ash 612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif // ASH_TEST_SHELL_TEST_API_H_ 63