Index: Source/core/rendering/RenderLayerBacking.cpp |
diff --git a/Source/core/rendering/RenderLayerBacking.cpp b/Source/core/rendering/RenderLayerBacking.cpp |
index c8991f2d9336feb4445947209752fb0aaca135c8..6967365b0bd7d7ee329fbe8b8d46b669bf5fb7ae 100644 |
--- a/Source/core/rendering/RenderLayerBacking.cpp |
+++ b/Source/core/rendering/RenderLayerBacking.cpp |
@@ -248,7 +248,7 @@ void RenderLayerBacking::updateTransform(const RenderStyle* style) |
// baked into it, and we don't want that. |
TransformationMatrix t; |
if (m_owningLayer->hasTransform()) { |
- style->applyTransform(t, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), RenderStyle::ExcludeTransformOrigin); |
+ style->applyTransform(t, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), RenderStyle::ExcludeTransformOrigin, renderer()->view()); |
makeMatrixRenderable(t, compositor()->canRender3DTransforms()); |
} |
@@ -1728,14 +1728,15 @@ bool RenderLayerBacking::startAnimation(double timeOffset, const CSSAnimationDat |
} |
bool didAnimate = false; |
+ RenderView* view = m_owningLayer->renderer()->view(); |
- if (hasTransform && m_graphicsLayer->addAnimation(transformVector, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), anim, keyframes.animationName(), timeOffset)) |
+ if (hasTransform && m_graphicsLayer->addAnimation(transformVector, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), anim, keyframes.animationName(), timeOffset, view)) |
didAnimate = true; |
- if (hasOpacity && m_graphicsLayer->addAnimation(opacityVector, IntSize(), anim, keyframes.animationName(), timeOffset)) |
+ if (hasOpacity && m_graphicsLayer->addAnimation(opacityVector, IntSize(), anim, keyframes.animationName(), timeOffset, view)) |
didAnimate = true; |
- if (hasFilter && m_graphicsLayer->addAnimation(filterVector, IntSize(), anim, keyframes.animationName(), timeOffset)) |
+ if (hasFilter && m_graphicsLayer->addAnimation(filterVector, IntSize(), anim, keyframes.animationName(), timeOffset, view)) |
didAnimate = true; |
return didAnimate; |
@@ -1754,6 +1755,7 @@ void RenderLayerBacking::animationFinished(const String& animationName) |
bool RenderLayerBacking::startTransition(double timeOffset, CSSPropertyID property, const RenderStyle* fromStyle, const RenderStyle* toStyle) |
{ |
bool didAnimate = false; |
+ RenderView* view = m_owningLayer->renderer()->view(); |
ASSERT(property != CSSPropertyInvalid); |
@@ -1764,7 +1766,7 @@ bool RenderLayerBacking::startTransition(double timeOffset, CSSPropertyID proper |
opacityVector.insert(adoptPtr(new FloatAnimationValue(0, compositingOpacity(fromStyle->opacity())))); |
opacityVector.insert(adoptPtr(new FloatAnimationValue(1, compositingOpacity(toStyle->opacity())))); |
// The boxSize param is only used for transform animations (which can only run on RenderBoxes), so we pass an empty size here. |
- if (m_graphicsLayer->addAnimation(opacityVector, IntSize(), opacityAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyOpacity), timeOffset)) { |
+ if (m_graphicsLayer->addAnimation(opacityVector, IntSize(), opacityAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyOpacity), timeOffset, view)) { |
// To ensure that the correct opacity is visible when the animation ends, also set the final opacity. |
updateOpacity(toStyle); |
didAnimate = true; |
@@ -1778,7 +1780,7 @@ bool RenderLayerBacking::startTransition(double timeOffset, CSSPropertyID proper |
KeyframeValueList transformVector(AnimatedPropertyWebkitTransform); |
transformVector.insert(adoptPtr(new TransformAnimationValue(0, &fromStyle->transform()))); |
transformVector.insert(adoptPtr(new TransformAnimationValue(1, &toStyle->transform()))); |
- if (m_graphicsLayer->addAnimation(transformVector, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), transformAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyWebkitTransform), timeOffset)) { |
+ if (m_graphicsLayer->addAnimation(transformVector, toRenderBox(renderer())->pixelSnappedBorderBoxRect().size(), transformAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyWebkitTransform), timeOffset, view)) { |
// To ensure that the correct transform is visible when the animation ends, also set the final transform. |
updateTransform(toStyle); |
didAnimate = true; |
@@ -1792,7 +1794,7 @@ bool RenderLayerBacking::startTransition(double timeOffset, CSSPropertyID proper |
KeyframeValueList filterVector(AnimatedPropertyWebkitFilter); |
filterVector.insert(adoptPtr(new FilterAnimationValue(0, &fromStyle->filter()))); |
filterVector.insert(adoptPtr(new FilterAnimationValue(1, &toStyle->filter()))); |
- if (m_graphicsLayer->addAnimation(filterVector, IntSize(), filterAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyWebkitFilter), timeOffset)) { |
+ if (m_graphicsLayer->addAnimation(filterVector, IntSize(), filterAnim, GraphicsLayer::animationNameForTransition(AnimatedPropertyWebkitFilter), timeOffset, view)) { |
// To ensure that the correct filter is visible when the animation ends, also set the final filter. |
updateFilters(toStyle); |
didAnimate = true; |