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

Unified Diff: Source/core/wawwa/RemotePlayerProxy.h

Issue 491053004: Expose Web Animations API to Web Workers (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Exposing the Web Animations API to Web Workers Created 6 years, 4 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: Source/core/wawwa/RemotePlayerProxy.h
diff --git a/Source/core/animation/AnimationStack.h b/Source/core/wawwa/RemotePlayerProxy.h
similarity index 57%
copy from Source/core/animation/AnimationStack.h
copy to Source/core/wawwa/RemotePlayerProxy.h
index c4762004cfa1620f99388e2fb32543c20066b5c7..2f9b2d5b269ba7650e86236feac281b538f7b570 100644
--- a/Source/core/animation/AnimationStack.h
+++ b/Source/core/wawwa/RemotePlayerProxy.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013 Google Inc. All rights reserved.
+ * Copyright (C) 2014 Google Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -28,42 +28,49 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef AnimationStack_h
-#define AnimationStack_h
+#ifndef RemotePlayerProxy_h
+#define RemotePlayerProxy_h
#include "core/animation/Animation.h"
#include "core/animation/AnimationEffect.h"
+#include "core/animation/AnimationHelpers.h"
#include "core/animation/AnimationPlayer.h"
-#include "core/animation/SampledEffect.h"
-#include "platform/geometry/FloatBox.h"
-#include "wtf/HashSet.h"
-#include "wtf/Vector.h"
+#include "core/animation/KeyframeEffectModel.h"
+#include "core/animation/StringKeyframe.h"
+#include "core/animation/TimingInput.h"
+#include "core/css/parser/BisonCSSParser.h"
+#include "core/css/parser/CSSPropertyParser.h"
+#include "core/css/resolver/CSSToStyleMap.h"
+#include "core/css/resolver/StyleResolver.h"
+#include "core/dom/Document.h"
+#include "core/dom/Element.h"
+#include "core/wawwa/ProxyKeyframe.h"
+#include "core/workers/Worker.h"
+#include "wtf/NonCopyingSort.h"
namespace blink {
-class InertAnimation;
+class Dictionary;
+class ExceptionState;
+class HTMLElement;
+class Element;
-class AnimationStack {
- DISALLOW_ALLOCATION();
- WTF_MAKE_NONCOPYABLE(AnimationStack);
-public:
- AnimationStack();
-
- void add(PassOwnPtrWillBeRawPtr<SampledEffect> effect) { m_effects.append(effect); }
- bool isEmpty() const { return m_effects.isEmpty(); }
- bool affects(CSSPropertyID) const;
- bool hasActiveAnimationsOnCompositor(CSSPropertyID) const;
- static WillBeHeapHashMap<CSSPropertyID, RefPtrWillBeMember<Interpolation> > activeInterpolations(AnimationStack*, const WillBeHeapVector<RawPtrWillBeMember<InertAnimation> >* newAnimations, const WillBeHeapHashSet<RawPtrWillBeMember<const AnimationPlayer> >* cancelledAnimationPlayers, Animation::Priority, double timelineCurrentTime);
+class RemotePlayerProxy FINAL : public RefCountedWillBeRefCountedGarbageCollected<RemotePlayerProxy> {
- bool getAnimatedBoundingBox(FloatBox&, CSSPropertyID) const;
- void trace(Visitor*);
+public:
+ RemotePlayerProxy(String id, Vector<ProxyKeyframe> keyframes, Timing timingInputDictionary, ExceptionState&, PassRefPtr<Worker>);
+ void execute(ACTIONS val, ExceptionState&);
+ void reportTime();
+ bool animated;
+ bool reported;
private:
- void simplifyEffects();
- // Effects sorted by priority. Lower priority at the start of the list.
- WillBeHeapVector<OwnPtrWillBeMember<SampledEffect> > m_effects;
-
- friend class AnimationAnimationStackTest;
+ String m_elemID;
+ RefPtr<Worker> m_worker;
+ AnimationPlayer* m_player;
+ PassRefPtrWillBeRawPtr<Element> m_target;
+ Vector<ProxyKeyframe> m_keyframes;
+ Timing m_timingInputDictionary;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698