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

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

Issue 11312139: Add SystemTrayObservers (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add comment. 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
« no previous file with comments | « ash/system/status_area_widget.cc ('k') | ash/system/tray/system_tray.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_;
« no previous file with comments | « ash/system/status_area_widget.cc ('k') | ash/system/tray/system_tray.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698