Chromium Code Reviews| Index: Source/core/rendering/compositing/CompositedLayerMapping.cpp |
| diff --git a/Source/core/rendering/compositing/CompositedLayerMapping.cpp b/Source/core/rendering/compositing/CompositedLayerMapping.cpp |
| index 8f2e9dd6ff369c2585001b7e05878d9b85d121a5..d81a0afa9ac3ba1656b6ecabf7928dd5cbf350ac 100644 |
| --- a/Source/core/rendering/compositing/CompositedLayerMapping.cpp |
| +++ b/Source/core/rendering/compositing/CompositedLayerMapping.cpp |
| @@ -556,8 +556,8 @@ void CompositedLayerMapping::updateSquashingLayerGeometry(const LayoutPoint& off |
| // The totalSquashBounds is positioned with respect to referenceLayer of this CompositedLayerMapping. |
| // But the squashingLayer needs to be positioned with respect to the ancestor CompositedLayerMapping. |
| - // The conversion between referenceLayer and the ancestor CLM is already computed in the caller as |
| - // offsetFromReferenceLayerToCompositedAncestor. |
| + // The conversion between referenceLayer and the ancestor CLM is already computed as |
| + // offsetFromReferenceLayerToParentGraphicsLayer. |
| totalSquashBounds.moveBy(offsetFromReferenceLayerToParentGraphicsLayer); |
| IntRect squashLayerBounds = enclosingIntRect(totalSquashBounds); |
| IntPoint squashLayerOrigin = squashLayerBounds.location(); |
| @@ -581,15 +581,14 @@ void CompositedLayerMapping::updateSquashingLayerGeometry(const LayoutPoint& off |
| LayoutSize offsetFromSquashLayerOrigin = (offsetFromTransformedAncestorForSquashedLayer - referenceOffsetFromTransformedAncestor) - squashLayerOriginInOwningLayerSpace; |
| // It is ok to repaint here, because all of the geometry needed to correctly repaint is computed by this point. |
| - IntSize newOffsetFromRenderer = -flooredIntSize(offsetFromSquashLayerOrigin); |
| + IntSize newOffsetFromRenderer = -IntSize(offsetFromSquashLayerOrigin.width().round(), offsetFromSquashLayerOrigin.height().round()); |
| + LayoutSize subpixelAccumulation = offsetFromSquashLayerOrigin + newOffsetFromRenderer; |
| if (layers[i].offsetFromRendererSet && layers[i].offsetFromRenderer != newOffsetFromRenderer) |
| layers[i].renderLayer->repainter().repaintIncludingNonCompositingDescendants(); |
| layers[i].offsetFromRenderer = newOffsetFromRenderer; |
| layers[i].offsetFromRendererSet = true; |
| - layers[i].renderLayer->setSubpixelAccumulation(offsetFromSquashLayerOrigin.fraction()); |
| - ASSERT(layers[i].renderLayer->subpixelAccumulation() == |
| - toLayoutSize(computeOffsetFromCompositedAncestor(layers[i].renderLayer, layers[i].renderLayer->ancestorCompositingLayer())).fraction()); |
|
leviw_travelin_and_unemployed
2014/06/18 17:33:35
I'm sad to see the assert leave, but I'll just cro
|
| + layers[i].renderLayer->setSubpixelAccumulation(subpixelAccumulation); |
| // FIXME: find a better design to avoid this redundant value - most likely it will make |
| // sense to move the paint task info into RenderLayer's m_compositingProperties. |