Index: chrome/browser/notifications/balloon_notification_ui_manager.h |
=================================================================== |
--- chrome/browser/notifications/balloon_notification_ui_manager.h (revision 263011) |
+++ chrome/browser/notifications/balloon_notification_ui_manager.h (working copy) |
@@ -1,111 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef CHROME_BROWSER_NOTIFICATIONS_BALLOON_NOTIFICATION_UI_MANAGER_H_ |
-#define CHROME_BROWSER_NOTIFICATIONS_BALLOON_NOTIFICATION_UI_MANAGER_H_ |
- |
-#include <deque> |
-#include <string> |
- |
-#include "base/memory/linked_ptr.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "base/prefs/pref_member.h" |
-#include "chrome/browser/notifications/balloon.h" |
-#include "chrome/browser/notifications/balloon_collection.h" |
-#include "chrome/browser/notifications/fullscreen_notification_blocker.h" |
-#include "chrome/browser/notifications/notification_prefs_manager.h" |
-#include "chrome/browser/notifications/notification_system_observer.h" |
-#include "chrome/browser/notifications/notification_ui_manager.h" |
-#include "chrome/browser/notifications/screen_lock_notification_blocker.h" |
- |
-class Notification; |
-class PrefService; |
-class Profile; |
-class QueuedNotification; |
- |
-// The notification manager manages use of the desktop for notifications. |
-// It maintains a queue of pending notifications when space becomes constrained. |
-class BalloonNotificationUIManager |
- : public NotificationUIManager, |
- public NotificationPrefsManager, |
- public BalloonCollection::BalloonSpaceChangeListener, |
- public message_center::NotificationBlocker::Observer { |
- public: |
- explicit BalloonNotificationUIManager(PrefService* local_state); |
- virtual ~BalloonNotificationUIManager(); |
- |
- // Initializes the UI manager with a balloon collection; this object |
- // takes ownership of the balloon collection. |
- void SetBalloonCollection(BalloonCollection* balloon_collection); |
- |
- // NotificationUIManager overrides: |
- virtual void Add(const Notification& notification, |
- Profile* profile) OVERRIDE; |
- virtual bool Update(const Notification& notification, |
- Profile* profile) OVERRIDE; |
- virtual const Notification* FindById( |
- const std::string& notification_id) const OVERRIDE; |
- virtual bool CancelById(const std::string& notification_id) OVERRIDE; |
- virtual std::set<std::string> GetAllIdsByProfileAndSourceOrigin( |
- Profile* profile, |
- const GURL& source) OVERRIDE; |
- virtual bool CancelAllBySourceOrigin(const GURL& source_origin) OVERRIDE; |
- virtual bool CancelAllByProfile(Profile* profile) OVERRIDE; |
- virtual void CancelAll() OVERRIDE; |
- |
- // NotificationPrefsManager overrides: |
- virtual BalloonCollection::PositionPreference |
- GetPositionPreference() const OVERRIDE; |
- virtual void SetPositionPreference( |
- BalloonCollection::PositionPreference preference) OVERRIDE; |
- |
- BalloonCollection* balloon_collection(); |
- NotificationPrefsManager* prefs_manager(); |
- |
- // Helper used to pull the static instance for testing. |
- // In tests, use this instead of g_browser_process->notification_ui_manager(). |
- static BalloonNotificationUIManager* GetInstanceForTesting(); |
- |
- void GetQueuedNotificationsForTesting( |
- std::vector<const Notification*>* notifications); |
- |
- private: |
- bool ShowNotification(const Notification& notification, Profile* profile); |
- bool UpdateNotification(const Notification& notification, Profile* profile); |
- |
- // Attempts to display notifications from the show_queue. Invoked if they |
- // previously returned 'false' from ShowNotifications, which may happen when |
- // there is no room to show another notification or notifications are blocked. |
- void CheckAndShowNotifications(); |
- |
- void ShowNotifications(); |
- |
- void OnDesktopNotificationPositionChanged(); |
- |
- // BalloonCollectionObserver overrides: |
- virtual void OnBalloonSpaceChanged() OVERRIDE; |
- |
- // NotificationBlocker::Observer overrides: |
- virtual void OnBlockingStateChanged( |
- message_center::NotificationBlocker* blocker) OVERRIDE; |
- |
- // A queue of notifications which are waiting to be shown. |
- typedef std::deque<linked_ptr<QueuedNotification> > NotificationDeque; |
- NotificationDeque show_queue_; |
- |
- // An owned pointer to the collection of active balloons. |
- scoped_ptr<BalloonCollection> balloon_collection_; |
- |
- ScreenLockNotificationBlocker screen_lock_blocker_; |
- FullscreenNotificationBlocker fullscreen_blocker_; |
- |
- // Prefs listener for the position preference. |
- IntegerPrefMember position_pref_; |
- |
- NotificationSystemObserver system_observer_; |
- |
- DISALLOW_COPY_AND_ASSIGN(BalloonNotificationUIManager); |
-}; |
- |
-#endif // CHROME_BROWSER_NOTIFICATIONS_BALLOON_NOTIFICATION_UI_MANAGER_H_ |