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

Side by Side Diff: Source/core/rendering/RenderBlock.cpp

Issue 263083009: [New Multicolumn] Make fast/multicol/overflow-content.html pass in the new implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebase master Created 6 years, 7 months 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 1515 matching lines...) Expand 10 before | Expand all | Expand 10 after
1526 1526
1527 if (needsPositionedMovementLayout() && !tryLayoutDoingPositionedMovement Only()) 1527 if (needsPositionedMovementLayout() && !tryLayoutDoingPositionedMovement Only())
1528 return false; 1528 return false;
1529 1529
1530 FastTextAutosizer::LayoutScope fastTextAutosizerLayoutScope(this); 1530 FastTextAutosizer::LayoutScope fastTextAutosizerLayoutScope(this);
1531 1531
1532 // Lay out positioned descendants or objects that just need to recompute overflow. 1532 // Lay out positioned descendants or objects that just need to recompute overflow.
1533 if (needsSimplifiedNormalFlowLayout()) 1533 if (needsSimplifiedNormalFlowLayout())
1534 simplifiedNormalFlowLayout(); 1534 simplifiedNormalFlowLayout();
1535 1535
1536 // Make sure a forced break is applied after the content if we are a flo w thread in a simplified layout.
1537 // This ensures the size information is correctly computed for the last auto-height region receiving content.
1538 if (isRenderFlowThread())
1539 toRenderFlowThread(this)->applyBreakAfterContent(clientLogicalBottom ());
1540
1541 // Lay out our positioned objects if our positioned child bit is set. 1536 // Lay out our positioned objects if our positioned child bit is set.
1542 // Also, if an absolute position element inside a relative positioned co ntainer moves, and the absolute element has a fixed position 1537 // Also, if an absolute position element inside a relative positioned co ntainer moves, and the absolute element has a fixed position
1543 // child, neither the fixed element nor its container learn of the movem ent since posChildNeedsLayout() is only marked as far as the 1538 // child, neither the fixed element nor its container learn of the movem ent since posChildNeedsLayout() is only marked as far as the
1544 // relative positioned container. So if we can have fixed pos objects in our positioned objects list check if any of them 1539 // relative positioned container. So if we can have fixed pos objects in our positioned objects list check if any of them
1545 // are statically positioned and thus need to move with their absolute a ncestors. 1540 // are statically positioned and thus need to move with their absolute a ncestors.
1546 bool canContainFixedPosObjects = canContainFixedPositionObjects(); 1541 bool canContainFixedPosObjects = canContainFixedPositionObjects();
1547 if (posChildNeedsLayout() || needsPositionedMovementLayout() || canConta inFixedPosObjects) 1542 if (posChildNeedsLayout() || needsPositionedMovementLayout() || canConta inFixedPosObjects)
1548 layoutPositionedObjects(false, needsPositionedMovementLayout() ? For cedLayoutAfterContainingBlockMoved : (!posChildNeedsLayout() && canContainFixedP osObjects ? LayoutOnlyFixedPositionedObjects : DefaultLayout)); 1543 layoutPositionedObjects(false, needsPositionedMovementLayout() ? For cedLayoutAfterContainingBlockMoved : (!posChildNeedsLayout() && canContainFixedP osObjects ? LayoutOnlyFixedPositionedObjects : DefaultLayout));
1549 1544
1550 // Recompute our overflow information. 1545 // Recompute our overflow information.
(...skipping 3425 matching lines...) Expand 10 before | Expand all | Expand 10 after
4976 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const 4971 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const
4977 { 4972 {
4978 showRenderObject(); 4973 showRenderObject();
4979 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) 4974 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box())
4980 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); 4975 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1);
4981 } 4976 }
4982 4977
4983 #endif 4978 #endif
4984 4979
4985 } // namespace WebCore 4980 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698