| 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_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ | 5 #ifndef ASH_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ |
| 6 #define ASH_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ | 6 #define ASH_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "ash/ash_export.h" | 11 #include "ash/ash_export.h" |
| 12 #include "ash/system/audio/audio_observer.h" | |
| 13 #include "ash/system/bluetooth/bluetooth_observer.h" | 12 #include "ash/system/bluetooth/bluetooth_observer.h" |
| 14 #include "ash/system/brightness/brightness_observer.h" | 13 #include "ash/system/brightness/brightness_observer.h" |
| 15 #include "ash/system/chromeos/enterprise/enterprise_domain_observer.h" | 14 #include "ash/system/chromeos/enterprise/enterprise_domain_observer.h" |
| 16 #include "ash/system/chromeos/network/network_observer.h" | 15 #include "ash/system/chromeos/network/network_observer.h" |
| 17 #include "ash/system/chromeos/network/sms_observer.h" | 16 #include "ash/system/chromeos/network/sms_observer.h" |
| 18 #include "ash/system/date/clock_observer.h" | 17 #include "ash/system/date/clock_observer.h" |
| 19 #include "ash/system/drive/drive_observer.h" | 18 #include "ash/system/drive/drive_observer.h" |
| 20 #include "ash/system/ime/ime_observer.h" | 19 #include "ash/system/ime/ime_observer.h" |
| 21 #include "ash/system/locale/locale_observer.h" | 20 #include "ash/system/locale/locale_observer.h" |
| 22 #include "ash/system/logout_button/logout_button_observer.h" | 21 #include "ash/system/logout_button/logout_button_observer.h" |
| 23 #include "ash/system/power/power_status_observer.h" | 22 #include "ash/system/power/power_status_observer.h" |
| 24 #include "ash/system/session_length_limit/session_length_limit_observer.h" | 23 #include "ash/system/session_length_limit/session_length_limit_observer.h" |
| 25 #include "ash/system/tray_accessibility.h" | 24 #include "ash/system/tray_accessibility.h" |
| 26 #include "ash/system/tray_caps_lock.h" | 25 #include "ash/system/tray_caps_lock.h" |
| 27 #include "ash/system/user/update_observer.h" | 26 #include "ash/system/user/update_observer.h" |
| 28 #include "ash/system/user/user_observer.h" | 27 #include "ash/system/user/user_observer.h" |
| 29 #include "base/observer_list.h" | 28 #include "base/observer_list.h" |
| 30 | 29 |
| 31 #if defined(OS_CHROMEOS) | 30 #if defined(OS_CHROMEOS) |
| 31 #include "ash/system/chromeos/audio/audio_observer.h" |
| 32 #include "ash/system/chromeos/network/network_observer.h" | 32 #include "ash/system/chromeos/network/network_observer.h" |
| 33 #include "ash/system/chromeos/network/sms_observer.h" | 33 #include "ash/system/chromeos/network/sms_observer.h" |
| 34 #include "ash/system/chromeos/screen_capture/screen_capture_observer.h" | 34 #include "ash/system/chromeos/screen_capture/screen_capture_observer.h" |
| 35 #endif | 35 #endif |
| 36 | 36 |
| 37 namespace ash { | 37 namespace ash { |
| 38 | 38 |
| 39 class ASH_EXPORT SystemTrayNotifier { | 39 class ASH_EXPORT SystemTrayNotifier { |
| 40 public: | 40 public: |
| 41 SystemTrayNotifier(); | 41 SystemTrayNotifier(); |
| 42 ~SystemTrayNotifier(); | 42 ~SystemTrayNotifier(); |
| 43 | 43 |
| 44 void AddAccessibilityObserver(AccessibilityObserver* observer); | 44 void AddAccessibilityObserver(AccessibilityObserver* observer); |
| 45 void RemoveAccessibilityObserver(AccessibilityObserver* observer); | 45 void RemoveAccessibilityObserver(AccessibilityObserver* observer); |
| 46 | 46 |
| 47 void AddAudioObserver(AudioObserver* observer); | |
| 48 void RemoveAudioObserver(AudioObserver* observer); | |
| 49 | |
| 50 void AddBluetoothObserver(BluetoothObserver* observer); | 47 void AddBluetoothObserver(BluetoothObserver* observer); |
| 51 void RemoveBluetoothObserver(BluetoothObserver* observer); | 48 void RemoveBluetoothObserver(BluetoothObserver* observer); |
| 52 | 49 |
| 53 void AddBrightnessObserver(BrightnessObserver* observer); | 50 void AddBrightnessObserver(BrightnessObserver* observer); |
| 54 void RemoveBrightnessObserver(BrightnessObserver* observer); | 51 void RemoveBrightnessObserver(BrightnessObserver* observer); |
| 55 | 52 |
| 56 void AddCapsLockObserver(CapsLockObserver* observer); | 53 void AddCapsLockObserver(CapsLockObserver* observer); |
| 57 void RemoveCapsLockObserver(CapsLockObserver* observer); | 54 void RemoveCapsLockObserver(CapsLockObserver* observer); |
| 58 | 55 |
| 59 void AddClockObserver(ClockObserver* observer); | 56 void AddClockObserver(ClockObserver* observer); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 77 void AddSessionLengthLimitObserver(SessionLengthLimitObserver* observer); | 74 void AddSessionLengthLimitObserver(SessionLengthLimitObserver* observer); |
| 78 void RemoveSessionLengthLimitObserver(SessionLengthLimitObserver* observer); | 75 void RemoveSessionLengthLimitObserver(SessionLengthLimitObserver* observer); |
| 79 | 76 |
| 80 void AddUpdateObserver(UpdateObserver* observer); | 77 void AddUpdateObserver(UpdateObserver* observer); |
| 81 void RemoveUpdateObserver(UpdateObserver* observer); | 78 void RemoveUpdateObserver(UpdateObserver* observer); |
| 82 | 79 |
| 83 void AddUserObserver(UserObserver* observer); | 80 void AddUserObserver(UserObserver* observer); |
| 84 void RemoveUserObserver(UserObserver* observer); | 81 void RemoveUserObserver(UserObserver* observer); |
| 85 | 82 |
| 86 #if defined(OS_CHROMEOS) | 83 #if defined(OS_CHROMEOS) |
| 84 void AddAudioObserver(AudioObserver* observer); |
| 85 void RemoveAudioObserver(AudioObserver* observer); |
| 86 |
| 87 void AddNetworkObserver(NetworkObserver* observer); | 87 void AddNetworkObserver(NetworkObserver* observer); |
| 88 void RemoveNetworkObserver(NetworkObserver* observer); | 88 void RemoveNetworkObserver(NetworkObserver* observer); |
| 89 | 89 |
| 90 void AddVpnObserver(NetworkObserver* observer); | 90 void AddVpnObserver(NetworkObserver* observer); |
| 91 void RemoveVpnObserver(NetworkObserver* observer); | 91 void RemoveVpnObserver(NetworkObserver* observer); |
| 92 | 92 |
| 93 void AddSmsObserver(SmsObserver* observer); | 93 void AddSmsObserver(SmsObserver* observer); |
| 94 void RemoveSmsObserver(SmsObserver* observer); | 94 void RemoveSmsObserver(SmsObserver* observer); |
| 95 | 95 |
| 96 void AddEnterpriseDomainObserver(EnterpriseDomainObserver* observer); | 96 void AddEnterpriseDomainObserver(EnterpriseDomainObserver* observer); |
| 97 void RemoveEnterpriseDomainObserver(EnterpriseDomainObserver* observer); | 97 void RemoveEnterpriseDomainObserver(EnterpriseDomainObserver* observer); |
| 98 | 98 |
| 99 void AddScreenCaptureObserver(ScreenCaptureObserver* observer); | 99 void AddScreenCaptureObserver(ScreenCaptureObserver* observer); |
| 100 void RemoveScreenCaptureObserver(ScreenCaptureObserver* observer); | 100 void RemoveScreenCaptureObserver(ScreenCaptureObserver* observer); |
| 101 #endif | 101 #endif |
| 102 | 102 |
| 103 void NotifyAccessibilityModeChanged( | 103 void NotifyAccessibilityModeChanged( |
| 104 AccessibilityNotificationVisibility notify); | 104 AccessibilityNotificationVisibility notify); |
| 105 void NotifyVolumeChanged(float level); | |
| 106 void NotifyMuteToggled(); | |
| 107 void NotifyRefreshBluetooth(); | 105 void NotifyRefreshBluetooth(); |
| 108 void NotifyBluetoothDiscoveringChanged(); | 106 void NotifyBluetoothDiscoveringChanged(); |
| 109 void NotifyBrightnessChanged(double level, bool user_initialted); | 107 void NotifyBrightnessChanged(double level, bool user_initialted); |
| 110 void NotifyCapsLockChanged(bool enabled, bool search_mapped_to_caps_lock); | 108 void NotifyCapsLockChanged(bool enabled, bool search_mapped_to_caps_lock); |
| 111 void NotifyRefreshClock(); | 109 void NotifyRefreshClock(); |
| 112 void NotifyDateFormatChanged(); | 110 void NotifyDateFormatChanged(); |
| 113 void NotifySystemClockTimeUpdated(); | 111 void NotifySystemClockTimeUpdated(); |
| 114 void NotifyRefreshDrive(DriveOperationStatusList& list); | 112 void NotifyRefreshDrive(DriveOperationStatusList& list); |
| 115 void NotifyRefreshIME(bool show_message); | 113 void NotifyRefreshIME(bool show_message); |
| 116 void NotifyShowLoginButtonChanged(bool show_login_button); | 114 void NotifyShowLoginButtonChanged(bool show_login_button); |
| 117 void NotifyLocaleChanged(LocaleObserver::Delegate* delegate, | 115 void NotifyLocaleChanged(LocaleObserver::Delegate* delegate, |
| 118 const std::string& cur_locale, | 116 const std::string& cur_locale, |
| 119 const std::string& from_locale, | 117 const std::string& from_locale, |
| 120 const std::string& to_locale); | 118 const std::string& to_locale); |
| 121 void NotifyPowerStatusChanged(const PowerSupplyStatus& power_status); | 119 void NotifyPowerStatusChanged(const PowerSupplyStatus& power_status); |
| 122 void NotifySessionStartTimeChanged(); | 120 void NotifySessionStartTimeChanged(); |
| 123 void NotifySessionLengthLimitChanged(); | 121 void NotifySessionLengthLimitChanged(); |
| 124 void NotifyUpdateRecommended(UpdateObserver::UpdateSeverity severity); | 122 void NotifyUpdateRecommended(UpdateObserver::UpdateSeverity severity); |
| 125 void NotifyUserUpdate(); | 123 void NotifyUserUpdate(); |
| 126 #if defined(OS_CHROMEOS) | 124 #if defined(OS_CHROMEOS) |
| 125 void NotifyVolumeChanged(float level); |
| 126 void NotifyMuteToggled(); |
| 127 void NotifyRefreshNetwork(const NetworkIconInfo &info); | 127 void NotifyRefreshNetwork(const NetworkIconInfo &info); |
| 128 void NotifySetNetworkMessage(NetworkTrayDelegate* delegate, | 128 void NotifySetNetworkMessage(NetworkTrayDelegate* delegate, |
| 129 NetworkObserver::MessageType message_type, | 129 NetworkObserver::MessageType message_type, |
| 130 NetworkObserver::NetworkType network_type, | 130 NetworkObserver::NetworkType network_type, |
| 131 const base::string16& title, | 131 const base::string16& title, |
| 132 const base::string16& message, | 132 const base::string16& message, |
| 133 const std::vector<base::string16>& links); | 133 const std::vector<base::string16>& links); |
| 134 void NotifyClearNetworkMessage(NetworkObserver::MessageType message_type); | 134 void NotifyClearNetworkMessage(NetworkObserver::MessageType message_type); |
| 135 void NotifyVpnRefreshNetwork(const NetworkIconInfo &info); | 135 void NotifyVpnRefreshNetwork(const NetworkIconInfo &info); |
| 136 void NotifyWillToggleWifi(); | 136 void NotifyWillToggleWifi(); |
| 137 void NotifyAddSmsMessage(const base::DictionaryValue& message); | 137 void NotifyAddSmsMessage(const base::DictionaryValue& message); |
| 138 void NotifyEnterpriseDomainChanged(); | 138 void NotifyEnterpriseDomainChanged(); |
| 139 void NotifyScreenCaptureStart(const base::Closure& stop_callback, | 139 void NotifyScreenCaptureStart(const base::Closure& stop_callback, |
| 140 const base::string16& sharing_app_name); | 140 const base::string16& sharing_app_name); |
| 141 void NotifyScreenCaptureStop(); | 141 void NotifyScreenCaptureStop(); |
| 142 #endif | 142 #endif |
| 143 | 143 |
| 144 private: | 144 private: |
| 145 ObserverList<AccessibilityObserver> accessibility_observers_; | 145 ObserverList<AccessibilityObserver> accessibility_observers_; |
| 146 ObserverList<AudioObserver> audio_observers_; | |
| 147 ObserverList<BluetoothObserver> bluetooth_observers_; | 146 ObserverList<BluetoothObserver> bluetooth_observers_; |
| 148 ObserverList<BrightnessObserver> brightness_observers_; | 147 ObserverList<BrightnessObserver> brightness_observers_; |
| 149 ObserverList<CapsLockObserver> caps_lock_observers_; | 148 ObserverList<CapsLockObserver> caps_lock_observers_; |
| 150 ObserverList<ClockObserver> clock_observers_; | 149 ObserverList<ClockObserver> clock_observers_; |
| 151 ObserverList<DriveObserver> drive_observers_; | 150 ObserverList<DriveObserver> drive_observers_; |
| 152 ObserverList<IMEObserver> ime_observers_; | 151 ObserverList<IMEObserver> ime_observers_; |
| 153 ObserverList<LocaleObserver> locale_observers_; | 152 ObserverList<LocaleObserver> locale_observers_; |
| 154 ObserverList<LogoutButtonObserver> logout_button_observers_; | 153 ObserverList<LogoutButtonObserver> logout_button_observers_; |
| 155 ObserverList<PowerStatusObserver> power_status_observers_; | 154 ObserverList<PowerStatusObserver> power_status_observers_; |
| 156 ObserverList<SessionLengthLimitObserver> session_length_limit_observers_; | 155 ObserverList<SessionLengthLimitObserver> session_length_limit_observers_; |
| 157 ObserverList<UpdateObserver> update_observers_; | 156 ObserverList<UpdateObserver> update_observers_; |
| 158 ObserverList<UserObserver> user_observers_; | 157 ObserverList<UserObserver> user_observers_; |
| 159 #if defined(OS_CHROMEOS) | 158 #if defined(OS_CHROMEOS) |
| 159 ObserverList<AudioObserver> audio_observers_; |
| 160 ObserverList<NetworkObserver> network_observers_; | 160 ObserverList<NetworkObserver> network_observers_; |
| 161 ObserverList<NetworkObserver> vpn_observers_; | 161 ObserverList<NetworkObserver> vpn_observers_; |
| 162 ObserverList<SmsObserver> sms_observers_; | 162 ObserverList<SmsObserver> sms_observers_; |
| 163 ObserverList<EnterpriseDomainObserver> enterprise_domain_observers_; | 163 ObserverList<EnterpriseDomainObserver> enterprise_domain_observers_; |
| 164 ObserverList<ScreenCaptureObserver> screen_capture_observers_; | 164 ObserverList<ScreenCaptureObserver> screen_capture_observers_; |
| 165 #endif | 165 #endif |
| 166 | 166 |
| 167 DISALLOW_COPY_AND_ASSIGN(SystemTrayNotifier); | 167 DISALLOW_COPY_AND_ASSIGN(SystemTrayNotifier); |
| 168 }; | 168 }; |
| 169 | 169 |
| 170 } // namespace ash | 170 } // namespace ash |
| 171 | 171 |
| 172 #endif // ASH_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ | 172 #endif // ASH_SYSTEM_TRAY_SYSTEM_TRAY_NOTIFIER_H_ |
| OLD | NEW |