Index: ui/arc/notification/arc_notification_surface_manager.h |
diff --git a/ui/arc/notification/arc_notification_surface_manager.h b/ui/arc/notification/arc_notification_surface_manager.h |
index 4a5d6f503b59dd923d9ee82d61c4215ccb6256f9..6757d48161c7447d370cee495501c8d3248475dd 100644 |
--- a/ui/arc/notification/arc_notification_surface_manager.h |
+++ b/ui/arc/notification/arc_notification_surface_manager.h |
@@ -2,59 +2,51 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_ |
-#define UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_ |
+#ifndef UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_H_ |
+#define UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_H_ |
-#include <map> |
#include <string> |
#include "base/macros.h" |
-#include "base/observer_list.h" |
-#include "components/exo/notification_surface_manager.h" |
namespace arc { |
+class ArcNotificationSurface; |
+ |
// Keeps track of NotificationSurface. |
-class ArcNotificationSurfaceManager : public exo::NotificationSurfaceManager { |
+class ArcNotificationSurfaceManager { |
public: |
class Observer { |
public: |
// Invoked when a notification surface is added to the registry. |
virtual void OnNotificationSurfaceAdded( |
- exo::NotificationSurface* surface) = 0; |
+ ArcNotificationSurface* surface) = 0; |
// Invoked when a notification surface is removed from the registry. |
virtual void OnNotificationSurfaceRemoved( |
- exo::NotificationSurface* surface) = 0; |
+ ArcNotificationSurface* surface) = 0; |
protected: |
virtual ~Observer() = default; |
}; |
- |
- ArcNotificationSurfaceManager(); |
- ~ArcNotificationSurfaceManager() override; |
- |
static ArcNotificationSurfaceManager* Get(); |
- // exo::NotificationSurfaceManager: |
- exo::NotificationSurface* GetSurface( |
- const std::string& notification_id) const override; |
- void AddSurface(exo::NotificationSurface* surface) override; |
- void RemoveSurface(exo::NotificationSurface* surface) override; |
+ virtual ~ArcNotificationSurfaceManager(); |
- void AddObserver(Observer* observer); |
- void RemoveObserver(Observer* observer); |
+ virtual ArcNotificationSurface* GetArcSurface( |
+ const std::string& notification_id) const = 0; |
+ virtual void AddObserver(Observer* observer) = 0; |
+ virtual void RemoveObserver(Observer* observer) = 0; |
- private: |
- using NotificationSurfaceMap = |
- std::map<std::string, exo::NotificationSurface*>; |
- NotificationSurfaceMap notification_surface_map_; |
+ protected: |
+ ArcNotificationSurfaceManager(); |
- base::ObserverList<Observer> observers_; |
+ private: |
+ static ArcNotificationSurfaceManager* instance_; |
DISALLOW_COPY_AND_ASSIGN(ArcNotificationSurfaceManager); |
}; |
} // namespace arc |
-#endif // UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_ |
+#endif // UI_ARC_NOTIFICATION_ARC_NOTIFICATION_SURFACE_MANAGER_H_ |