[email protected] | 262f8bd | 2012-03-23 19:30:27 | [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 | |||||
5 | #ifndef ASH_SHELL_SHELL_DELEGATE_IMPL_H_ | ||||
6 | #define ASH_SHELL_SHELL_DELEGATE_IMPL_H_ | ||||
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 7 | |
dcheng | a9454747 | 2016-04-08 08:41:11 | [diff] [blame] | 8 | #include <memory> |
[email protected] | 565f32fc0 | 2013-03-05 18:51:48 | [diff] [blame] | 9 | #include <string> |
10 | |||||
James Cook | b0bf8e8 | 2017-04-09 17:01:44 | [diff] [blame] | 11 | #include "ash/shell_delegate.h" |
avi | db567a8a | 2015-12-20 17:07:24 | [diff] [blame] | 12 | #include "base/macros.h" |
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 13 | |
[email protected] | 86459e2c | 2013-04-10 13:39:24 | [diff] [blame] | 14 | namespace keyboard { |
ben | 974286a | 2015-10-10 00:45:12 | [diff] [blame] | 15 | class KeyboardUI; |
[email protected] | 86459e2c | 2013-04-10 13:39:24 | [diff] [blame] | 16 | } |
17 | |||||
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 18 | namespace ash { |
19 | namespace shell { | ||||
20 | |||||
msw | 0414d412 | 2016-07-06 22:58:48 | [diff] [blame] | 21 | class ShellDelegateImpl : public ShellDelegate { |
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 22 | public: |
23 | ShellDelegateImpl(); | ||||
dcheng | f596351 | 2014-10-28 01:14:13 | [diff] [blame] | 24 | ~ShellDelegateImpl() override; |
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 25 | |
jamescook | 2a6b869 | 2016-10-04 02:41:29 | [diff] [blame] | 26 | // ShellDelegate: |
rockot | 400ea35b | 2016-10-15 19:15:32 | [diff] [blame] | 27 | ::service_manager::Connector* GetShellConnector() const override; |
dcheng | f596351 | 2014-10-28 01:14:13 | [diff] [blame] | 28 | bool IsIncognitoAllowed() const override; |
29 | bool IsMultiProfilesEnabled() const override; | ||||
30 | bool IsRunningInForcedAppMode() const override; | ||||
varkha | d43f5524 | 2017-05-26 20:55:58 | [diff] [blame] | 31 | bool CanShowWindowForUser(aura::Window* window) const override; |
peletskyi | da0bbb1 | 2015-04-08 17:11:04 | [diff] [blame] | 32 | bool IsForceMaximizeOnFirstRun() const override; |
dcheng | f596351 | 2014-10-28 01:14:13 | [diff] [blame] | 33 | void PreInit() override; |
34 | void PreShutdown() override; | ||||
35 | void Exit() override; | ||||
yhanada | 8909a54 | 2017-07-11 10:06:19 | [diff] [blame] | 36 | std::unique_ptr<keyboard::KeyboardUI> CreateKeyboardUI() override; |
kenobi | b7af62b | 2016-07-29 21:40:16 | [diff] [blame] | 37 | void OpenUrlFromArc(const GURL& url) override; |
msw | 5138f3d | 2017-04-20 00:22:07 | [diff] [blame] | 38 | void ShelfInit() override; |
39 | void ShelfShutdown() override; | ||||
msw | 0414d412 | 2016-07-06 22:58:48 | [diff] [blame] | 40 | SystemTrayDelegate* CreateSystemTrayDelegate() override; |
msw | 0e91d93 | 2016-08-25 22:34:09 | [diff] [blame] | 41 | std::unique_ptr<WallpaperDelegate> CreateWallpaperDelegate() override; |
msw | 0414d412 | 2016-07-06 22:58:48 | [diff] [blame] | 42 | AccessibilityDelegate* CreateAccessibilityDelegate() override; |
jdufault | 0f4fa6e | 2016-08-05 19:13:59 | [diff] [blame] | 43 | std::unique_ptr<PaletteDelegate> CreatePaletteDelegate() override; |
James Cook | 840177e | 2017-05-25 02:20:01 | [diff] [blame] | 44 | ui::MenuModel* CreateContextMenu(Shelf* shelf, |
jamescook | da53c14 | 2016-06-08 23:38:56 | [diff] [blame] | 45 | const ShelfItem* item) override; |
dcheng | f596351 | 2014-10-28 01:14:13 | [diff] [blame] | 46 | GPUSupport* CreateGPUSupport() override; |
47 | base::string16 GetProductName() const override; | ||||
afakhry | cd2bb98d | 2015-09-09 09:03:42 | [diff] [blame] | 48 | gfx::Image GetDeprecatedAcceleratorImage() const override; |
afakhry | 15eb928 | 2017-04-27 04:03:31 | [diff] [blame] | 49 | PrefService* GetActiveUserPrefService() const override; |
Wenzhao Zang | 44240fb | 2017-07-13 01:36:54 | [diff] [blame] | 50 | PrefService* GetLocalStatePrefService() const override; |
warx | 4c8baedb | 2016-12-03 22:38:50 | [diff] [blame] | 51 | bool IsTouchscreenEnabledInPrefs(bool use_local_state) const override; |
52 | void SetTouchscreenEnabledInPrefs(bool enabled, | ||||
53 | bool use_local_state) override; | ||||
54 | void UpdateTouchscreenStatusFromPrefs() override; | ||||
Scott Violet | 17a6172 | 2017-06-19 17:54:31 | [diff] [blame] | 55 | #if defined(USE_OZONE) |
56 | ui::InputDeviceControllerClient* GetInputDeviceControllerClient() override; | ||||
57 | #endif | ||||
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 58 | |
59 | private: | ||||
[email protected] | 262f8bd | 2012-03-23 19:30:27 | [diff] [blame] | 60 | DISALLOW_COPY_AND_ASSIGN(ShellDelegateImpl); |
61 | }; | ||||
62 | |||||
63 | } // namespace shell | ||||
64 | } // namespace ash | ||||
65 | |||||
66 | #endif // ASH_SHELL_SHELL_DELEGATE_IMPL_H_ |