Index: public/platform/WebAnimation.h |
diff --git a/public/platform/WebTransformKeyframe.h b/public/platform/WebAnimation.h |
similarity index 52% |
copy from public/platform/WebTransformKeyframe.h |
copy to public/platform/WebAnimation.h |
index 4adc83af5845124fd0c12a3e520f8e77f7dd26a8..26d0ec306977b071fc1cde3afb84fe78f88184e8 100644 |
--- a/public/platform/WebTransformKeyframe.h |
+++ b/public/platform/WebAnimation.h |
@@ -22,35 +22,61 @@ |
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-#ifndef WebTransformKeyframe_h |
-#define WebTransformKeyframe_h |
+#ifndef WebAnimation_h |
+#define WebAnimation_h |
+#include "WebCommon.h" |
#include "WebNonCopyable.h" |
#include "WebPrivateOwnPtr.h" |
-#include "WebTransformOperations.h" |
-#if INSIDE_BLINK |
-namespace WTF { template <typename T> class PassOwnPtr; } |
+ |
+#if BLINK_IMPLEMENTATION |
+#include "wtf/Forward.h" |
#endif |
+#define WebCompositorAnimation WebAnimation |
+ |
namespace blink { |
+class CCActiveAnimation; |
+} |
+ |
+namespace blink { |
+ |
+class WebAnimationCurve; |
-class WebTransformKeyframe : public WebNonCopyable { |
+// A compositor driven animation. |
+class WebAnimation { |
public: |
-#if INSIDE_BLINK |
- BLINK_PLATFORM_EXPORT WebTransformKeyframe(double time, WTF::PassOwnPtr<WebTransformOperations> value); |
-#endif |
+ enum TargetProperty { |
+ TargetPropertyTransform = 0, |
+ TargetPropertyOpacity, |
+ TargetPropertyFilter, |
+ TargetPropertyScrollOffset |
+ }; |
+ |
+ virtual ~WebAnimation() { } |
+ |
+ // An id is effectively the animation's name, and it is not unique. |
+ virtual int id() = 0; |
+ |
+ virtual TargetProperty targetProperty() const = 0; |
- BLINK_PLATFORM_EXPORT ~WebTransformKeyframe(); |
+ // This is the number of times that the animation will play. If this |
+ // value is zero the animation will not play. If it is negative, then |
+ // the animation will loop indefinitely. |
+ virtual int iterations() const = 0; |
+ virtual void setIterations(int) = 0; |
- BLINK_PLATFORM_EXPORT double time() const; |
+ virtual double startTime() const = 0; |
+ virtual void setStartTime(double monotonicTime) = 0; |
- BLINK_PLATFORM_EXPORT const WebTransformOperations& value() const; |
+ virtual double timeOffset() const = 0; |
+ virtual void setTimeOffset(double monotonicTime) = 0; |
-private: |
- double m_time; |
- WebPrivateOwnPtr<WebTransformOperations> m_value; |
+ // If alternatesDirection is true, on odd numbered iterations we reverse the curve. |
+ virtual bool alternatesDirection() const = 0; |
+ virtual void setAlternatesDirection(bool) = 0; |
}; |
} // namespace blink |
-#endif // WebTransformKeyframe_h |
+#endif // WebAnimation_h |