Index: ui/gfx/compositor/layer_animation_element.h |
diff --git a/ui/gfx/compositor/layer_animation_element.h b/ui/gfx/compositor/layer_animation_element.h |
index 12697b0531ea6d67330daba8d9c1fa64b394fdb0..d38bc42375c40c162be6d55a84418edeb3329e6e 100644 |
--- a/ui/gfx/compositor/layer_animation_element.h |
+++ b/ui/gfx/compositor/layer_animation_element.h |
@@ -10,10 +10,8 @@ |
#include "base/time.h" |
#include "ui/gfx/compositor/compositor_export.h" |
- |
-namespace gfx { |
-class Rect; |
-} // gfx |
+#include "ui/gfx/rect.h" |
+#include "ui/gfx/transform.h" |
namespace ui { |
@@ -31,6 +29,14 @@ class COMPOSITOR_EXPORT LayerAnimationElement { |
OPACITY |
}; |
+ struct TargetValue { |
+ public: |
+ TargetValue(); |
+ gfx::Rect bounds; |
+ Transform transform; |
+ float opacity; |
+ }; |
+ |
typedef std::set<AnimatableProperty> AnimatableProperties; |
LayerAnimationElement(const AnimatableProperties& properties, |
@@ -71,6 +77,9 @@ class COMPOSITOR_EXPORT LayerAnimationElement { |
// before OnStarted or Progress. |
void Abort(); |
+ // Assigns the target value to |target|. |
+ void GetTargetValue(TargetValue* target) const; |
+ |
// The properties that the element modifies. |
const AnimatableProperties& properties() const { return properties_; } |
@@ -82,6 +91,7 @@ class COMPOSITOR_EXPORT LayerAnimationElement { |
// OnProgress. |
virtual void OnStart(LayerAnimationDelegate* delegate) = 0; |
virtual void OnProgress(double t, LayerAnimationDelegate* delegate) = 0; |
+ virtual void OnGetTarget(TargetValue* target) const = 0; |
virtual void OnAbort() = 0; |
private: |