OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ASH_SHELL_DELEGATE_H_ | 5 #ifndef ASH_SHELL_DELEGATE_H_ |
6 #define ASH_SHELL_DELEGATE_H_ | 6 #define ASH_SHELL_DELEGATE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "ash/ash_export.h" | 11 #include "ash/ash_export.h" |
12 #include "base/callback.h" | 12 #include "base/callback.h" |
13 #include "base/strings/string16.h" | 13 #include "base/strings/string16.h" |
14 | 14 |
15 class GURL; | 15 class GURL; |
16 class PrefService; | 16 class PrefService; |
17 | 17 |
| 18 namespace aura { |
| 19 class Window; |
| 20 } |
| 21 |
18 namespace gfx { | 22 namespace gfx { |
19 class Image; | 23 class Image; |
20 } | 24 } |
21 | 25 |
22 namespace keyboard { | 26 namespace keyboard { |
23 class KeyboardUI; | 27 class KeyboardUI; |
24 } | 28 } |
25 | 29 |
26 namespace service_manager { | 30 namespace service_manager { |
27 class Connector; | 31 class Connector; |
28 } | 32 } |
29 | 33 |
30 namespace ui { | 34 namespace ui { |
31 class MenuModel; | 35 class MenuModel; |
32 } | 36 } |
33 | 37 |
34 namespace ash { | 38 namespace ash { |
35 | 39 |
36 class AccessibilityDelegate; | 40 class AccessibilityDelegate; |
37 class GPUSupport; | 41 class GPUSupport; |
38 class PaletteDelegate; | 42 class PaletteDelegate; |
39 class SessionStateDelegate; | 43 class SessionStateDelegate; |
40 class Shelf; | 44 class Shelf; |
41 struct ShelfItem; | 45 struct ShelfItem; |
42 class SystemTrayDelegate; | 46 class SystemTrayDelegate; |
43 class WallpaperDelegate; | 47 class WallpaperDelegate; |
44 class WmWindow; | |
45 | 48 |
46 // Delegate of the Shell. | 49 // Delegate of the Shell. |
47 class ASH_EXPORT ShellDelegate { | 50 class ASH_EXPORT ShellDelegate { |
48 public: | 51 public: |
49 // The Shell owns the delegate. | 52 // The Shell owns the delegate. |
50 virtual ~ShellDelegate() {} | 53 virtual ~ShellDelegate() {} |
51 | 54 |
52 // Returns the connector for the mojo service manager. Returns null in tests. | 55 // Returns the connector for the mojo service manager. Returns null in tests. |
53 virtual service_manager::Connector* GetShellConnector() const = 0; | 56 virtual service_manager::Connector* GetShellConnector() const = 0; |
54 | 57 |
55 // Returns true if multi-profiles feature is enabled. | 58 // Returns true if multi-profiles feature is enabled. |
56 virtual bool IsMultiProfilesEnabled() const = 0; | 59 virtual bool IsMultiProfilesEnabled() const = 0; |
57 | 60 |
58 // Returns true if incognito mode is allowed for the user. | 61 // Returns true if incognito mode is allowed for the user. |
59 // Incognito windows are restricted for supervised users. | 62 // Incognito windows are restricted for supervised users. |
60 virtual bool IsIncognitoAllowed() const = 0; | 63 virtual bool IsIncognitoAllowed() const = 0; |
61 | 64 |
62 // Returns true if we're running in forced app mode. | 65 // Returns true if we're running in forced app mode. |
63 virtual bool IsRunningInForcedAppMode() const = 0; | 66 virtual bool IsRunningInForcedAppMode() const = 0; |
64 | 67 |
65 // Returns true if |window| can be shown for the delegate's concept of current | 68 // Returns true if |window| can be shown for the delegate's concept of current |
66 // user. | 69 // user. |
67 virtual bool CanShowWindowForUser(WmWindow* window) const = 0; | 70 virtual bool CanShowWindowForUser(aura::Window* window) const = 0; |
68 | 71 |
69 // Returns true if the first window shown on first run should be | 72 // Returns true if the first window shown on first run should be |
70 // unconditionally maximized, overriding the heuristic that normally chooses | 73 // unconditionally maximized, overriding the heuristic that normally chooses |
71 // the window size. | 74 // the window size. |
72 virtual bool IsForceMaximizeOnFirstRun() const = 0; | 75 virtual bool IsForceMaximizeOnFirstRun() const = 0; |
73 | 76 |
74 // Called before processing |Shell::Init()| so that the delegate | 77 // Called before processing |Shell::Init()| so that the delegate |
75 // can perform tasks necessary before the shell is initialized. | 78 // can perform tasks necessary before the shell is initialized. |
76 virtual void PreInit() = 0; | 79 virtual void PreInit() = 0; |
77 | 80 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 // if both local state and user prefs are enabled, otherwise disabled. | 140 // if both local state and user prefs are enabled, otherwise disabled. |
138 virtual void UpdateTouchscreenStatusFromPrefs() = 0; | 141 virtual void UpdateTouchscreenStatusFromPrefs() = 0; |
139 | 142 |
140 // Toggles the status of touchpad between enabled and disabled. | 143 // Toggles the status of touchpad between enabled and disabled. |
141 virtual void ToggleTouchpad() {} | 144 virtual void ToggleTouchpad() {} |
142 }; | 145 }; |
143 | 146 |
144 } // namespace ash | 147 } // namespace ash |
145 | 148 |
146 #endif // ASH_SHELL_DELEGATE_H_ | 149 #endif // ASH_SHELL_DELEGATE_H_ |
OLD | NEW |