Chromium Code Reviews| Index: ui/views/animation/ink_drop.h |
| diff --git a/ui/views/animation/ink_drop.h b/ui/views/animation/ink_drop.h |
| index 0eb419e11105867f8c25447dee516146f55fd213..7f05964833a541c8d9f9411209a3fb853eb96583 100644 |
| --- a/ui/views/animation/ink_drop.h |
| +++ b/ui/views/animation/ink_drop.h |
| @@ -19,11 +19,13 @@ |
| namespace views { |
| +class InkDropObserver; |
| + |
| // Pure virtual base class that manages the lifetime and state of an ink drop |
| // ripple as well as visual hover state feedback. |
| class VIEWS_EXPORT InkDrop { |
| public: |
| - virtual ~InkDrop() {} |
| + virtual ~InkDrop(); |
| // Called by ink drop hosts when their size is changed. |
| virtual void HostSizeChanged(const gfx::Size& new_size) = 0; |
| @@ -46,8 +48,18 @@ class VIEWS_EXPORT InkDrop { |
| // Enables or disables the focus state. |
| virtual void SetFocused(bool is_focused) = 0; |
| + // Returns true if the highlight animation is in the process of fading in or |
| + // is visible. |
| + virtual bool IsHighlightFadingInOrVisible() const = 0; |
| + |
| + // Methods to add/remove observers for this object. |
| + void AddObserver(InkDropObserver* observer); |
| + void RemoveObserver(InkDropObserver* observer); |
| + |
| protected: |
| - InkDrop() {} |
| + InkDrop(); |
| + |
| + base::ObserverList<InkDropObserver> observers_; |
|
bruthig
2017/03/24 20:48:03
Can you prevent subclasses from modifying this? Pr
spqchan
2017/03/27 23:41:51
Done.
bruthig
2017/03/28 21:33:34
Thx :)
|
| private: |
| DISALLOW_COPY_AND_ASSIGN(InkDrop); |