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

Unified Diff: Source/core/rendering/RenderLayer.cpp

Issue 792803002: [New Multicolumn] Layout support for column-span:all. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@347325-placeholder
Patch Set: Created 6 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: Source/core/rendering/RenderLayer.cpp
diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp
index a695829e1b19abbd4aea11f4f8f83fd1b9f2cf2e..13fa3e35821ad5ea00569205e2da4ce6f18fe624 100644
--- a/Source/core/rendering/RenderLayer.cpp
+++ b/Source/core/rendering/RenderLayer.cpp
@@ -807,7 +807,7 @@ LayoutPoint RenderLayer::location() const
localPoint.moveBy(box->topLeftLocation());
}
- if (!renderer()->isOutOfFlowPositioned() && renderer()->parent()) {
+ if (!renderer()->isOutOfFlowPositioned() && !renderer()->isColumnSpanAll() && renderer()->parent()) {
// We must adjust our position by walking up the render tree looking for the
// nearest enclosing object with a layer.
RenderObject* curr = renderer()->parent();
@@ -1397,8 +1397,14 @@ static inline const RenderLayer* accumulateOffsetTowardsAncestor(const RenderLay
location += (thisCoords - ancestorCoords);
return ancestorLayer;
}
- } else
+ } else if (renderer->isColumnSpanAll()) {
+ RenderBlock* multicolContainer = renderer->containingBlock();
+ ASSERT(toRenderBlockFlow(multicolContainer)->multiColumnFlowThread());
+ parentLayer = multicolContainer->layer();
+ ASSERT(parentLayer);
+ } else {
parentLayer = layer->parent();
+ }
if (!parentLayer)
return 0;

Powered by Google App Engine
This is Rietveld 408576698