Chromium Code Reviews| Index: Source/core/rendering/RenderLayer.cpp |
| diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp |
| index 20f618d211c61b254a05595db9ba40aaa1bb68a3..73d92be2aaaeac404f7d803b5af959360a795885 100644 |
| --- a/Source/core/rendering/RenderLayer.cpp |
| +++ b/Source/core/rendering/RenderLayer.cpp |
| @@ -136,7 +136,6 @@ RenderLayer::RenderLayer(RenderLayerModelObject* renderer, LayerType type) |
| , m_staticInlinePosition(0) |
| , m_staticBlockPosition(0) |
| , m_enclosingPaginationLayer(0) |
| - , m_3dRenderingContextRoot(0) |
| , m_groupedMapping(0) |
| , m_repainter(renderer) |
| , m_clipper(renderer) |
| @@ -562,20 +561,20 @@ void RenderLayer::updateTransform() |
| dirty3DTransformedDescendantStatus(); |
| } |
| -// Note: this function assumes that all ancestors have an updated 3d rendering context root. |
| -void RenderLayer::update3dRenderingContext() |
| +RenderLayer* RenderLayer::renderingContextRoot() |
| { |
| - m_3dRenderingContextRoot = 0; |
| - |
| if (!shouldFlattenTransform()) |
|
esprehn
2014/03/25 02:39:35
I don't think this is correct. The previous code w
abarth-chromium
2014/03/25 02:59:39
I see. Yes, I screwed this up. I'll work on a te
ojan
2014/03/25 04:16:27
Ick. Good catch. The next question is why this cod
Ian Vollick
2014/03/25 14:40:01
Some possibly-useful background: the code was set
|
| - m_3dRenderingContextRoot = this; |
| + return this; |
| + // FIXME: Why doesn't this need to be a loop? |
|
Ian Vollick
2014/03/25 14:40:01
The 3d rendering context was meant to bubble down.
|
| if (RenderObject* containingBlock = renderer()->containingBlock()) { |
| if (RenderLayer* ancestorLayer = containingBlock->enclosingLayer()) { |
| if (!ancestorLayer->shouldFlattenTransform()) |
| - m_3dRenderingContextRoot = ancestorLayer->renderingContextRoot(); |
| + return ancestorLayer; |
| } |
| } |
| + |
| + return 0; |
| } |
| TransformationMatrix RenderLayer::currentTransform(RenderStyle::ApplyTransformOrigin applyOrigin) const |