| Index: ui/views/animation/ink_drop_animation_controller_impl.h
|
| diff --git a/ui/views/animation/ink_drop_animation_controller_impl.h b/ui/views/animation/ink_drop_animation_controller_impl.h
|
| index 5ca25633ba16cb6687e34b07ac96af79fdb7ad75..4aa11dd8394fd4aa580d3b8530ee4a2cd9a516fe 100644
|
| --- a/ui/views/animation/ink_drop_animation_controller_impl.h
|
| +++ b/ui/views/animation/ink_drop_animation_controller_impl.h
|
| @@ -15,6 +15,7 @@
|
| namespace views {
|
| class InkDropAnimation;
|
| class InkDropHost;
|
| +class InkDropHover;
|
|
|
| // A functional implementation of an InkDropAnimationController.
|
| class VIEWS_EXPORT InkDropAnimationControllerImpl
|
| @@ -29,6 +30,8 @@ class VIEWS_EXPORT InkDropAnimationControllerImpl
|
| // InkDropAnimationController:
|
| InkDropState GetInkDropState() const override;
|
| void AnimateToState(InkDropState ink_drop_state) override;
|
| + void SetHovered(bool is_hovered) override;
|
| + bool IsHovered() const override;
|
| gfx::Size GetInkDropLargeSize() const override;
|
| void SetInkDropSize(const gfx::Size& large_size,
|
| int large_corner_radius,
|
| @@ -45,6 +48,13 @@ class VIEWS_EXPORT InkDropAnimationControllerImpl
|
| // Destroys the current |ink_drop_animation_|.
|
| void DestroyInkDropAnimation();
|
|
|
| + // Creates a new InkDropHover and sets it to |hover_|. If |hover_| wasn't null
|
| + // then it will be destroyed using DestroyInkDropHover().
|
| + void CreateInkDropHover();
|
| +
|
| + // Destroys the current |hover_|.
|
| + void DestroyInkDropHover();
|
| +
|
| // views::InkDropAnimationObserver:
|
| void InkDropAnimationStarted(InkDropState ink_drop_state) override;
|
| void InkDropAnimationEnded(InkDropState ink_drop_state,
|
| @@ -68,6 +78,19 @@ class VIEWS_EXPORT InkDropAnimationControllerImpl
|
| // Cached center point for the ink drop.
|
| gfx::Point ink_drop_center_;
|
|
|
| + // The root Layer that parents the InkDropAnimation layers and the
|
| + // InkDropHover layers. The |root_layer_| is the one that is added and removed
|
| + // from the InkDropHost.
|
| + scoped_ptr<ui::Layer> root_layer_;
|
| +
|
| + // The current InkDropHover. Lazily created using CreateInkDropHover();
|
| + scoped_ptr<InkDropHover> hover_;
|
| +
|
| + // Tracks whether the ink drop is currently in a hover state or not. Note this
|
| + // will not always have the same value as |hover_|->is_hovered() because the
|
| + // hover layer is faded out when the ink drop ripple is active.
|
| + bool is_hovered_;
|
| +
|
| // The current InkDropAnimation. Created on demand using
|
| // CreateInkDropAnimation().
|
| scoped_ptr<InkDropAnimation> ink_drop_animation_;
|
|
|