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_TEST_SHELL_DELEGATE_H_
6 #define ASH_TEST_TEST_SHELL_DELEGATE_H_
10 #include "ash/media_delegate.h"
11 #include "ash/shell_delegate.h"
12 #include "base/compiler_specific.h"
13 #include "base/memory/scoped_ptr.h"
14 #include "base/observer_list.h"
17 class KeyboardControllerProxy
;
23 class TestSessionStateDelegate
;
25 class TestShellDelegate
: public ShellDelegate
{
28 virtual ~TestShellDelegate();
30 void set_multi_profiles_enabled(bool multi_profiles_enabled
) {
31 multi_profiles_enabled_
= multi_profiles_enabled
;
34 // Overridden from ShellDelegate:
35 virtual bool IsFirstRunAfterBoot() const OVERRIDE
;
36 virtual bool IsIncognitoAllowed() const OVERRIDE
;
37 virtual bool IsMultiProfilesEnabled() const OVERRIDE
;
38 virtual bool IsRunningInForcedAppMode() const OVERRIDE
;
39 virtual bool IsMultiAccountEnabled() const OVERRIDE
;
40 virtual void PreInit() OVERRIDE
;
41 virtual void PreShutdown() OVERRIDE
;
42 virtual void Exit() OVERRIDE
;
43 virtual keyboard::KeyboardControllerProxy
*
44 CreateKeyboardControllerProxy() OVERRIDE
;
45 virtual void VirtualKeyboardActivated(bool activated
) OVERRIDE
;
46 virtual void AddVirtualKeyboardStateObserver(
47 VirtualKeyboardStateObserver
* observer
) OVERRIDE
;
48 virtual void RemoveVirtualKeyboardStateObserver(
49 VirtualKeyboardStateObserver
* observer
) OVERRIDE
;
50 virtual content::BrowserContext
* GetActiveBrowserContext() OVERRIDE
;
51 virtual app_list::AppListViewDelegate
* CreateAppListViewDelegate() OVERRIDE
;
52 virtual ShelfDelegate
* CreateShelfDelegate(ShelfModel
* model
) OVERRIDE
;
53 virtual SystemTrayDelegate
* CreateSystemTrayDelegate() OVERRIDE
;
54 virtual UserWallpaperDelegate
* CreateUserWallpaperDelegate() OVERRIDE
;
55 virtual SessionStateDelegate
* CreateSessionStateDelegate() OVERRIDE
;
56 virtual AccessibilityDelegate
* CreateAccessibilityDelegate() OVERRIDE
;
57 virtual NewWindowDelegate
* CreateNewWindowDelegate() OVERRIDE
;
58 virtual MediaDelegate
* CreateMediaDelegate() OVERRIDE
;
59 virtual ui::MenuModel
* CreateContextMenu(
61 ash::ShelfItemDelegate
* item_delegate
,
62 ash::ShelfItem
* item
) OVERRIDE
;
63 virtual GPUSupport
* CreateGPUSupport() OVERRIDE
;
64 virtual base::string16
GetProductName() const OVERRIDE
;
66 int num_exit_requests() const { return num_exit_requests_
; }
68 TestSessionStateDelegate
* test_session_state_delegate() {
69 return test_session_state_delegate_
;
72 void SetMediaCaptureState(MediaCaptureState state
);
75 int num_exit_requests_
;
76 bool multi_profiles_enabled_
;
78 scoped_ptr
<content::BrowserContext
> active_browser_context_
;
80 ObserverList
<ash::VirtualKeyboardStateObserver
> keyboard_state_observer_list_
;
82 TestSessionStateDelegate
* test_session_state_delegate_
; // Not owned.
84 DISALLOW_COPY_AND_ASSIGN(TestShellDelegate
);
90 #endif // ASH_TEST_TEST_SHELL_DELEGATE_H_