Index: ash/system/tray/system_tray.h |
diff --git a/ash/system/tray/system_tray.h b/ash/system/tray/system_tray.h |
index a42632f999f165f098e4905bd0f8feffac5cbd18..57cc2e78add1162d83a6618434c39dfde7cdbe12 100644 |
--- a/ash/system/tray/system_tray.h |
+++ b/ash/system/tray/system_tray.h |
@@ -34,6 +34,7 @@ class IMEObserver; |
class LocaleObserver; |
class LogoutButtonObserver; |
class PowerStatusObserver; |
+class SystemTrayDelegate; |
class UpdateObserver; |
class UserObserver; |
#if defined(OS_CHROMEOS) |
@@ -61,8 +62,9 @@ class ASH_EXPORT SystemTray : public internal::TrayBackgroundView, |
explicit SystemTray(internal::StatusAreaWidget* status_area_widget); |
virtual ~SystemTray(); |
- // Creates the default set of items for the sytem tray. |
- void CreateItems(); |
+ // Calls TrayBackgroundView::Initialize(), creates the tray items, and |
+ // adds them to SystemTrayNotifier. |
+ void InitializeTrayItems(SystemTrayDelegate* delegate); |
// Adds a new item in the tray. |
void AddTrayItem(SystemTrayItem* item); |
@@ -118,64 +120,12 @@ class ASH_EXPORT SystemTray : public internal::TrayBackgroundView, |
// Returns true if the mouse is inside the notification bubble. |
bool IsMouseInNotificationBubble() const; |
- AccessibilityObserver* accessibility_observer() { |
- return accessibility_observer_; |
- } |
- AudioObserver* audio_observer() { |
- return audio_observer_; |
- } |
- BluetoothObserver* bluetooth_observer() { |
- return bluetooth_observer_; |
- } |
- BrightnessObserver* brightness_observer() { |
- return brightness_observer_; |
- } |
- CapsLockObserver* caps_lock_observer() { |
- return caps_lock_observer_; |
- } |
- ClockObserver* clock_observer() { |
- return clock_observer_; |
- } |
- DriveObserver* drive_observer() { |
- return drive_observer_; |
- } |
- IMEObserver* ime_observer() { |
- return ime_observer_; |
- } |
- LocaleObserver* locale_observer() { |
- return locale_observer_; |
- } |
- LogoutButtonObserver* logout_button_observer() { |
- return logout_button_observer_; |
- } |
-#if defined(OS_CHROMEOS) |
- NetworkObserver* network_observer() { |
- return network_observer_; |
- } |
- NetworkObserver* vpn_observer() { |
- return vpn_observer_; |
- } |
- SmsObserver* sms_observer() { |
- return sms_observer_; |
- } |
-#endif |
- ObserverList<PowerStatusObserver>& power_status_observers() { |
- return power_status_observers_; |
- } |
- UpdateObserver* update_observer() { |
- return update_observer_; |
- } |
- UserObserver* user_observer() { |
- return user_observer_; |
- } |
- |
// Accessors for testing. |
// Returns true if the bubble exists. |
bool CloseBubbleForTest() const; |
// Overridden from TrayBackgroundView. |
- virtual void Initialize() OVERRIDE; |
virtual void SetShelfAlignment(ShelfAlignment alignment) OVERRIDE; |
virtual void AnchorUpdated() OVERRIDE; |
virtual string16 GetAccessibleNameForTray() OVERRIDE; |
@@ -194,6 +144,9 @@ class ASH_EXPORT SystemTray : public internal::TrayBackgroundView, |
virtual void HideBubble(const views::TrayBubbleView* bubble_view) OVERRIDE; |
private: |
+ // Creates the default set of items for the sytem tray. |
+ void CreateItems(SystemTrayDelegate* delegate); |
+ |
// Returns true if the system_bubble_ exists and is of type |type|. |
bool HasSystemBubbleType(internal::SystemTrayBubble::BubbleType type); |
@@ -237,26 +190,6 @@ class ASH_EXPORT SystemTray : public internal::TrayBackgroundView, |
// Mappings of system tray item and it's view in the tray. |
std::map<SystemTrayItem*, views::View*> tray_item_map_; |
- // These observers are not owned by the tray. |
- AccessibilityObserver* accessibility_observer_; |
- AudioObserver* audio_observer_; |
- BluetoothObserver* bluetooth_observer_; |
- BrightnessObserver* brightness_observer_; |
- CapsLockObserver* caps_lock_observer_; |
- ClockObserver* clock_observer_; |
- DriveObserver* drive_observer_; |
- IMEObserver* ime_observer_; |
- LocaleObserver* locale_observer_; |
- LogoutButtonObserver* logout_button_observer_; |
-#if defined(OS_CHROMEOS) |
- NetworkObserver* network_observer_; |
- NetworkObserver* vpn_observer_; |
- SmsObserver* sms_observer_; |
-#endif |
- ObserverList<PowerStatusObserver> power_status_observers_; |
- UpdateObserver* update_observer_; |
- UserObserver* user_observer_; |
- |
// Bubble for default and detailed views. |
scoped_ptr<internal::SystemBubbleWrapper> system_bubble_; |