diff options
Diffstat (limited to 'Source/WebCore/rendering')
-rw-r--r-- | Source/WebCore/rendering/RenderLayer.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/Source/WebCore/rendering/RenderLayer.cpp b/Source/WebCore/rendering/RenderLayer.cpp index 5f32933..bc0d440 100644 --- a/Source/WebCore/rendering/RenderLayer.cpp +++ b/Source/WebCore/rendering/RenderLayer.cpp @@ -2633,16 +2633,10 @@ void RenderLayer::paintPaginatedChildLayer(RenderLayer* childLayer, RenderLayer* Vector<RenderLayer*> columnLayers; RenderLayer* ancestorLayer = isNormalFlowOnly() ? parent() : stackingContext(); for (RenderLayer* curr = childLayer->parent(); curr; curr = curr->parent()) { - if (curr->renderer()->hasColumns()) + if (curr->renderer()->hasColumns() && checkContainingBlockChainForPagination(childLayer->renderer(), curr->renderBox())) columnLayers.append(curr); -#ifdef ANDROID - // Bug filed: 56107 if (curr == ancestorLayer) break; -#else - if (curr == ancestorLayer || (curr->parent() && curr->parent()->renderer()->isPositioned())) - break; -#endif } ASSERT(columnLayers.size()); @@ -3122,9 +3116,9 @@ RenderLayer* RenderLayer::hitTestPaginatedChildLayer(RenderLayer* childLayer, Re Vector<RenderLayer*> columnLayers; RenderLayer* ancestorLayer = isNormalFlowOnly() ? parent() : stackingContext(); for (RenderLayer* curr = childLayer->parent(); curr; curr = curr->parent()) { - if (curr->renderer()->hasColumns()) + if (curr->renderer()->hasColumns() && checkContainingBlockChainForPagination(childLayer->renderer(), curr->renderBox())) columnLayers.append(curr); - if (curr == ancestorLayer || (curr->parent() && curr->parent()->renderer()->isPositioned())) + if (curr == ancestorLayer) break; } |