1 // Copyright 2013 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_SYSTEM_TRAY_DEFAULT_SYSTEM_TRAY_DELEGATE_H_
6 #define ASH_SYSTEM_TRAY_DEFAULT_SYSTEM_TRAY_DELEGATE_H_
8 #include "ash/ash_export.h"
9 #include "ash/system/tray/system_tray_delegate.h"
10 #include "base/compiler_specific.h"
11 #include "base/memory/scoped_ptr.h"
15 class ASH_EXPORT DefaultSystemTrayDelegate
: public SystemTrayDelegate
{
17 DefaultSystemTrayDelegate();
18 ~DefaultSystemTrayDelegate() override
;
20 // Overridden from SystemTrayDelegate:
21 void Initialize() override
;
22 void Shutdown() override
;
23 bool GetTrayVisibilityOnStartup() override
;
24 user::LoginStatus
GetUserLoginStatus() const override
;
25 void ChangeProfilePicture() override
;
26 const std::string
GetEnterpriseDomain() const override
;
27 const base::string16
GetEnterpriseMessage() const override
;
28 const std::string
GetSupervisedUserManager() const override
;
29 const base::string16
GetSupervisedUserManagerName() const override
;
30 const base::string16
GetSupervisedUserMessage() const override
;
31 bool IsUserSupervised() const override
;
32 void GetSystemUpdateInfo(UpdateInfo
* info
) const override
;
33 base::HourClockType
GetHourClockType() const override
;
34 void ShowSettings() override
;
35 bool ShouldShowSettings() override
;
36 void ShowDateSettings() override
;
37 void ShowSetTimeDialog() override
;
38 void ShowNetworkSettings(const std::string
& service_path
) override
;
39 void ShowBluetoothSettings() override
;
40 void ShowDisplaySettings() override
;
41 void ShowChromeSlow() override
;
42 bool ShouldShowDisplayNotification() override
;
43 void ShowIMESettings() override
;
44 void ShowHelp() override
;
45 void ShowAccessibilityHelp() override
;
46 void ShowAccessibilitySettings() override
;
47 void ShowPublicAccountInfo() override
;
48 void ShowEnterpriseInfo() override
;
49 void ShowSupervisedUserInfo() override
;
50 void ShowUserLogin() override
;
51 void ShutDown() override
;
52 void SignOut() override
;
53 void RequestLockScreen() override
;
54 void RequestRestartForUpdate() override
;
55 void GetAvailableBluetoothDevices(BluetoothDeviceList
* list
) override
;
56 void BluetoothStartDiscovering() override
;
57 void BluetoothStopDiscovering() override
;
58 void ConnectToBluetoothDevice(const std::string
& address
) override
;
59 void GetCurrentIME(IMEInfo
* info
) override
;
60 void GetAvailableIMEList(IMEInfoList
* list
) override
;
61 void GetCurrentIMEProperties(IMEPropertyInfoList
* list
) override
;
62 void SwitchIME(const std::string
& ime_id
) override
;
63 void ActivateIMEProperty(const std::string
& key
) override
;
64 void ManageBluetoothDevices() override
;
65 void ToggleBluetooth() override
;
66 bool IsBluetoothDiscovering() override
;
67 void ShowOtherNetworkDialog(const std::string
& type
) override
;
68 bool GetBluetoothAvailable() override
;
69 bool GetBluetoothEnabled() override
;
70 bool GetBluetoothDiscovering() override
;
71 void ChangeProxySettings() override
;
72 VolumeControlDelegate
* GetVolumeControlDelegate() const override
;
73 void SetVolumeControlDelegate(
74 scoped_ptr
<VolumeControlDelegate
> delegate
) override
;
75 bool GetSessionStartTime(base::TimeTicks
* session_start_time
) override
;
76 bool GetSessionLengthLimit(base::TimeDelta
* session_length_limit
) override
;
77 int GetSystemTrayMenuWidth() override
;
78 void ActiveUserWasChanged() override
;
79 bool IsSearchKeyMappedToCapsLock() override
;
80 tray::UserAccountsDelegate
* GetUserAccountsDelegate(
81 const std::string
& user_id
) override
;
82 void AddCustodianInfoTrayObserver(
83 CustodianInfoTrayObserver
* observer
) override
;
84 void RemoveCustodianInfoTrayObserver(
85 CustodianInfoTrayObserver
* observer
) override
;
88 bool bluetooth_enabled_
;
89 scoped_ptr
<VolumeControlDelegate
> volume_control_delegate_
;
91 DISALLOW_COPY_AND_ASSIGN(DefaultSystemTrayDelegate
);
96 #endif // ASH_SYSTEM_TRAY_DEFAULT_SYSTEM_TRAY_DELEGATE_H_