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

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: 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 1512 matching lines...) Expand 10 before | Expand all | Expand 10 after
1523 1523
1524 if (needsPositionedMovementLayout() && !tryLayoutDoingPositionedMovement Only()) 1524 if (needsPositionedMovementLayout() && !tryLayoutDoingPositionedMovement Only())
1525 return false; 1525 return false;
1526 1526
1527 FastTextAutosizer::LayoutScope fastTextAutosizerLayoutScope(this); 1527 FastTextAutosizer::LayoutScope fastTextAutosizerLayoutScope(this);
1528 1528
1529 // Lay out positioned descendants or objects that just need to recompute overflow. 1529 // Lay out positioned descendants or objects that just need to recompute overflow.
1530 if (needsSimplifiedNormalFlowLayout()) 1530 if (needsSimplifiedNormalFlowLayout())
1531 simplifiedNormalFlowLayout(); 1531 simplifiedNormalFlowLayout();
1532 1532
1533 // Make sure a forced break is applied after the content if we are a flo w thread in a simplified layout.
1534 // This ensures the size information is correctly computed for the last auto-height region receiving content.
1535 if (isRenderFlowThread())
1536 toRenderFlowThread(this)->applyBreakAfterContent(clientLogicalBottom ());
Julien - ping for review 2014/05/07 01:01:11 Shouldn't we call recalculateColumnHeight as our h
1537
1538 // Lay out our positioned objects if our positioned child bit is set. 1533 // Lay out our positioned objects if our positioned child bit is set.
1539 // Also, if an absolute position element inside a relative positioned co ntainer moves, and the absolute element has a fixed position 1534 // Also, if an absolute position element inside a relative positioned co ntainer moves, and the absolute element has a fixed position
1540 // child, neither the fixed element nor its container learn of the movem ent since posChildNeedsLayout() is only marked as far as the 1535 // child, neither the fixed element nor its container learn of the movem ent since posChildNeedsLayout() is only marked as far as the
1541 // relative positioned container. So if we can have fixed pos objects in our positioned objects list check if any of them 1536 // relative positioned container. So if we can have fixed pos objects in our positioned objects list check if any of them
1542 // are statically positioned and thus need to move with their absolute a ncestors. 1537 // are statically positioned and thus need to move with their absolute a ncestors.
1543 bool canContainFixedPosObjects = canContainFixedPositionObjects(); 1538 bool canContainFixedPosObjects = canContainFixedPositionObjects();
1544 if (posChildNeedsLayout() || needsPositionedMovementLayout() || canConta inFixedPosObjects) 1539 if (posChildNeedsLayout() || needsPositionedMovementLayout() || canConta inFixedPosObjects)
1545 layoutPositionedObjects(false, needsPositionedMovementLayout() ? For cedLayoutAfterContainingBlockMoved : (!posChildNeedsLayout() && canContainFixedP osObjects ? LayoutOnlyFixedPositionedObjects : DefaultLayout)); 1540 layoutPositionedObjects(false, needsPositionedMovementLayout() ? For cedLayoutAfterContainingBlockMoved : (!posChildNeedsLayout() && canContainFixedP osObjects ? LayoutOnlyFixedPositionedObjects : DefaultLayout));
1546 1541
1547 // Recompute our overflow information. 1542 // Recompute our overflow information.
(...skipping 3425 matching lines...) Expand 10 before | Expand all | Expand 10 after
4973 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const 4968 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const
4974 { 4969 {
4975 showRenderObject(); 4970 showRenderObject();
4976 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) 4971 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box())
4977 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); 4972 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1);
4978 } 4973 }
4979 4974
4980 #endif 4975 #endif
4981 4976
4982 } // namespace WebCore 4977 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698