Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(688)

Unified Diff: ash/system/tray/system_tray.h

Issue 11312139: Add SystemTrayObservers (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ash/system/tray/system_tray.h
diff --git a/ash/system/tray/system_tray.h b/ash/system/tray/system_tray.h
index ae6fc0408add6c4fe8553485e1ebc9f016e1eb4a..ce8b8700e40b3c7f20245c43bc4d97e4354f0356 100644
--- a/ash/system/tray/system_tray.h
+++ b/ash/system/tray/system_tray.h
@@ -33,6 +33,7 @@ class DriveObserver;
class IMEObserver;
class LocaleObserver;
class PowerStatusObserver;
+class SystemTrayDelegate;
class UpdateObserver;
class UserObserver;
#if defined(OS_CHROMEOS)
@@ -60,8 +61,8 @@ 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()
+ void InitializeTrayItems(SystemTrayDelegate* delegate);
// Adds a new item in the tray.
void AddTrayItem(SystemTrayItem* item);
@@ -117,61 +118,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_;
- }
-#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;
@@ -190,6 +142,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);
@@ -233,25 +188,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_;
-#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_;

Powered by Google App Engine
This is Rietveld 408576698