Chromium Code Reviews| Index: components/exo/notification_surface.h |
| diff --git a/components/exo/notification_surface.h b/components/exo/notification_surface.h |
| index 33bfa2f0f4ce589db81d28abea5f18cecbfc9ec8..7d1fb94511988f3be2d40e9ff756baf595fc2285 100644 |
| --- a/components/exo/notification_surface.h |
| +++ b/components/exo/notification_surface.h |
| @@ -17,39 +17,23 @@ namespace aura { |
| class Window; |
| } |
| +namespace views { |
| +class NativeViewHost; |
| +} |
| + |
| namespace exo { |
| -class NotificationSurfaceManager; |
| -class Surface; |
| // Handles notification surface role of a given surface. |
| -class NotificationSurface : public SurfaceDelegate, public SurfaceObserver { |
| +class NotificationSurface { |
| public: |
| - NotificationSurface(NotificationSurfaceManager* manager, |
| - Surface* surface, |
| - const std::string& notification_id); |
| - ~NotificationSurface() override; |
| - |
| - gfx::Size GetSize() const; |
| - |
| - aura::Window* window() { return window_.get(); } |
| - const std::string& notification_id() const { return notification_id_; } |
| - |
| - // Overridden from SurfaceDelegate: |
| - void OnSurfaceCommit() override; |
| - bool IsSurfaceSynchronized() const override; |
| - |
| - // Overridden from SurfaceObserver: |
| - void OnSurfaceDestroying(Surface* surface) override; |
| + virtual ~NotificationSurface() {} |
|
hidehiko
2017/03/02 15:38:16
How about; s/{}/= default;/
|
| - private: |
| - NotificationSurfaceManager* const manager_; // Not owned. |
| - Surface* surface_; // Not owned. |
| - const std::string notification_id_; |
| + virtual gfx::Size GetSize() const = 0; |
|
hidehiko
2017/03/02 15:38:15
Because this is now interface, could you document
|
| - std::unique_ptr<aura::Window> window_; |
| - bool added_to_manager_ = false; |
| + virtual void AttachWindow(views::NativeViewHost* nvh) = 0; |
| - DISALLOW_COPY_AND_ASSIGN(NotificationSurface); |
| + virtual aura::Window* window() = 0; |
|
hidehiko
2017/03/02 15:38:16
Optional: These are now virtual function so it can
|
| + virtual const std::string& notification_id() const = 0; |
| }; |
| } // namespace exo |