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

Unified Diff: cc/layer_impl.h

Issue 11348256: Use an auxiliary list of animation controllers. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Unit tests pass! Created 8 years 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: cc/layer_impl.h
diff --git a/cc/layer_impl.h b/cc/layer_impl.h
index 6cc4d1230b349846c3fb0495fe19e317372a1aa4..7e91e404180e213337783620e7cb647fb6ca6bbb 100644
--- a/cc/layer_impl.h
+++ b/cc/layer_impl.h
@@ -36,7 +36,7 @@ class Layer;
struct AppendQuadsData;
-class CC_EXPORT LayerImpl : public LayerAnimationControllerClient {
+class CC_EXPORT LayerImpl {
public:
static scoped_ptr<LayerImpl> create(int id)
{
@@ -45,12 +45,7 @@ public:
virtual ~LayerImpl();
- // LayerAnimationControllerClient implementation.
- virtual int id() const OVERRIDE;
- virtual void setOpacityFromAnimation(float) OVERRIDE;
- virtual float opacity() const OVERRIDE;
- virtual void setTransformFromAnimation(const gfx::Transform&) OVERRIDE;
- virtual const gfx::Transform& transform() const OVERRIDE;
+ int id() const;
// Tree structure.
LayerImpl* parent() { return m_parent; }
@@ -73,7 +68,7 @@ public:
bool replicaHasMask() const { return m_replicaLayer && (m_maskLayer || m_replicaLayer->m_maskLayer); }
LayerTreeHostImpl* layerTreeHostImpl() const { return m_layerTreeHostImpl; }
- void setLayerTreeHostImpl(LayerTreeHostImpl* hostImpl) { m_layerTreeHostImpl = hostImpl; }
+ void setLayerTreeHostImpl(LayerTreeHostImpl* hostImpl);
scoped_ptr<SharedQuadState> createSharedQuadState() const;
// willDraw must be called before appendQuads. If willDraw is called,
@@ -125,6 +120,7 @@ public:
bool contentsOpaque() const { return m_contentsOpaque; }
void setOpacity(float);
+ float opacity() const;
bool opacityIsAnimating() const;
void setPosition(const gfx::PointF&);
@@ -229,6 +225,7 @@ public:
void setDoubleSided(bool);
void setTransform(const gfx::Transform&);
+ const gfx::Transform& transform() const;
bool transformIsAnimating() const;
const gfx::Transform& drawTransform() const { return m_drawTransform; }
@@ -355,12 +352,14 @@ private:
bool m_masksToBounds;
bool m_contentsOpaque;
float m_opacity;
+ base::TimeTicks m_opacityLastUpdateTime;
gfx::PointF m_position;
bool m_preserves3D;
bool m_useParentBackfaceVisibility;
bool m_drawCheckerboardForMissingTiles;
gfx::Transform m_sublayerTransform;
gfx::Transform m_transform;
+ base::TimeTicks m_transformLastUpdateTime;
bool m_useLCDText;
bool m_drawsContent;
@@ -420,7 +419,7 @@ private:
gfx::RectF m_updateRect;
// Manages animations for this layer.
- scoped_ptr<LayerAnimationController> m_layerAnimationController;
+ scoped_refptr<LayerAnimationController> m_layerAnimationController;
// Manages scrollbars for this layer
scoped_ptr<ScrollbarAnimationController> m_scrollbarAnimationController;

Powered by Google App Engine
This is Rietveld 408576698