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

Unified Diff: components/exo/notification_surface.h

Issue 2723143002: Add unittests of ArcCustomNotificationView (Closed)
Patch Set: Created 3 years, 10 months 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: 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

Powered by Google App Engine
This is Rietveld 408576698