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_TEST_TEST_SYSTEM_TRAY_DELEGATE_H_
6#define ASH_TEST_TEST_SYSTEM_TRAY_DELEGATE_H_
7
8#include "ash/system/tray/system_tray_delegate.h"
9#include "base/compiler_specific.h"
10#include "base/memory/scoped_ptr.h"
11
12// TODO(oshima/stevenjb): Move this to ash/test. crbug.com/159693.
13
14namespace ash {
15namespace test {
16
17class TestSystemTrayDelegate : public SystemTrayDelegate {
18 public:
19  TestSystemTrayDelegate();
20
21  virtual ~TestSystemTrayDelegate();
22
23 public:
24  virtual void Initialize() OVERRIDE;
25  virtual void Shutdown() OVERRIDE;
26  virtual bool GetTrayVisibilityOnStartup() OVERRIDE;
27
28  // Overridden from SystemTrayDelegate:
29  virtual user::LoginStatus GetUserLoginStatus() const OVERRIDE;
30  virtual bool IsOobeCompleted() const OVERRIDE;
31  virtual void ChangeProfilePicture() OVERRIDE;
32  virtual const std::string GetEnterpriseDomain() const OVERRIDE;
33  virtual const base::string16 GetEnterpriseMessage() const OVERRIDE;
34  virtual const std::string GetLocallyManagedUserManager() const OVERRIDE;
35  virtual const base::string16 GetLocallyManagedUserManagerName() const
36      OVERRIDE;
37  virtual const base::string16 GetLocallyManagedUserMessage() const OVERRIDE;
38  virtual bool SystemShouldUpgrade() const OVERRIDE;
39  virtual base::HourClockType GetHourClockType() const OVERRIDE;
40  virtual void ShowSettings() OVERRIDE;
41  virtual bool ShouldShowSettings() OVERRIDE;
42  virtual void ShowDateSettings() OVERRIDE;
43  virtual void ShowNetworkSettings(const std::string& service_path) OVERRIDE;
44  virtual void ShowBluetoothSettings() OVERRIDE;
45  virtual void ShowDisplaySettings() OVERRIDE;
46  virtual void ShowChromeSlow() OVERRIDE;
47  virtual bool ShouldShowDisplayNotification() OVERRIDE;
48  virtual void ShowDriveSettings() OVERRIDE;
49  virtual void ShowIMESettings() OVERRIDE;
50  virtual void ShowHelp() OVERRIDE;
51  virtual void ShowAccessibilityHelp() OVERRIDE;
52  virtual void ShowAccessibilitySettings() OVERRIDE;
53  virtual void ShowPublicAccountInfo() OVERRIDE;
54  virtual void ShowEnterpriseInfo() OVERRIDE;
55  virtual void ShowLocallyManagedUserInfo() OVERRIDE;
56  virtual void ShowUserLogin() OVERRIDE;
57  virtual void ShutDown() OVERRIDE;
58  virtual void SignOut() OVERRIDE;
59  virtual void RequestLockScreen() OVERRIDE;
60  virtual void RequestRestartForUpdate() OVERRIDE;
61  virtual void GetAvailableBluetoothDevices(BluetoothDeviceList* list) OVERRIDE;
62  virtual void BluetoothStartDiscovering() OVERRIDE;
63  virtual void BluetoothStopDiscovering() OVERRIDE;
64  virtual void ConnectToBluetoothDevice(const std::string& address) OVERRIDE;
65  virtual void GetCurrentIME(IMEInfo* info) OVERRIDE;
66  virtual void GetAvailableIMEList(IMEInfoList* list) OVERRIDE;
67  virtual void GetCurrentIMEProperties(IMEPropertyInfoList* list) OVERRIDE;
68  virtual void SwitchIME(const std::string& ime_id) OVERRIDE;
69  virtual void ActivateIMEProperty(const std::string& key) OVERRIDE;
70  virtual void CancelDriveOperation(int32 operation_id) OVERRIDE;
71  virtual void GetDriveOperationStatusList(
72      ash::DriveOperationStatusList*) OVERRIDE;
73  virtual void ConfigureNetwork(const std::string& network_id) OVERRIDE;
74  virtual void EnrollOrConfigureNetwork(
75      const std::string& network_id,
76      gfx::NativeWindow parent_window) OVERRIDE;
77  virtual void ManageBluetoothDevices() OVERRIDE;
78  virtual void ToggleBluetooth() OVERRIDE;
79  virtual bool IsBluetoothDiscovering() OVERRIDE;
80  virtual void ShowMobileSimDialog() OVERRIDE;
81  virtual void ShowMobileSetup(const std::string& network_id) OVERRIDE;
82  virtual void ShowOtherWifi() OVERRIDE;
83  virtual void ShowOtherVPN() OVERRIDE;
84  virtual void ShowOtherCellular() OVERRIDE;
85  virtual bool GetBluetoothAvailable() OVERRIDE;
86  virtual bool GetBluetoothEnabled() OVERRIDE;
87  virtual bool GetCellularCarrierInfo(std::string* carrier_id,
88                                      std::string* topup_url,
89                                      std::string* setup_url) OVERRIDE;
90  virtual void ShowCellularURL(const std::string& url) OVERRIDE;
91  virtual void ChangeProxySettings() OVERRIDE;
92  virtual VolumeControlDelegate* GetVolumeControlDelegate() const OVERRIDE;
93  virtual void SetVolumeControlDelegate(
94      scoped_ptr<VolumeControlDelegate> delegate) OVERRIDE;
95  virtual bool GetSessionStartTime(
96      base::TimeTicks* session_start_time) OVERRIDE;
97  virtual bool GetSessionLengthLimit(
98      base::TimeDelta* session_length_limit) OVERRIDE;
99  virtual int GetSystemTrayMenuWidth() OVERRIDE;
100  virtual base::string16 FormatTimeDuration(
101      const base::TimeDelta& delta) const OVERRIDE;
102  virtual void MaybeSpeak(const std::string& utterance) const OVERRIDE;
103
104  void set_should_show_display_notification(bool should_show) {
105    should_show_display_notification_ = should_show;
106  }
107
108 private:
109  bool bluetooth_enabled_;
110  bool caps_lock_enabled_;
111  bool should_show_display_notification_;
112  scoped_ptr<VolumeControlDelegate> volume_control_delegate_;
113
114  DISALLOW_COPY_AND_ASSIGN(TestSystemTrayDelegate);
115};
116
117}  // namespace test
118}  // namespace ash
119
120#endif  // ASH_TEST_TEST_SYSTEM_TRAY_DELEGATE_H_
121