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

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

Issue 712553003: [New Multicolumn] Actual support for layout of column-span:all. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 1 month 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 1503 matching lines...) Expand 10 before | Expand all | Expand 10 after
1514 return; 1514 return;
1515 1515
1516 IntRect inflatedRect = pixelSnappedBorderBoxRect(); 1516 IntRect inflatedRect = pixelSnappedBorderBoxRect();
1517 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect); 1517 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect);
1518 addVisualOverflow(inflatedRect); 1518 addVisualOverflow(inflatedRect);
1519 } 1519 }
1520 1520
1521 bool RenderBlock::createsBlockFormattingContext() const 1521 bool RenderBlock::createsBlockFormattingContext() const
1522 { 1522 {
1523 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || isFlexItemIncludingDeprecated() 1523 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || isFlexItemIncludingDeprecated()
1524 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell() || isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement( ) || style()->columnSpan(); 1524 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell() || isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement( ) || (document().regionBasedColumnsEnabled() ? isColumnSpanAll() : style()->colu mnSpan());
1525 } 1525 }
1526 1526
1527 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child) 1527 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child)
1528 { 1528 {
1529 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into 1529 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into
1530 // an auto value. Add a method to determine this, so that we can avoid the r elayout. 1530 // an auto value. Add a method to determine this, so that we can avoid the r elayout.
1531 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( ))) 1531 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( )))
1532 child->setChildNeedsLayout(MarkOnlyThis); 1532 child->setChildNeedsLayout(MarkOnlyThis);
1533 1533
1534 // If relayoutChildren is set and the child has percentage padding or an emb edded content box, we also need to invalidate the childs pref widths. 1534 // If relayoutChildren is set and the child has percentage padding or an emb edded content box, we also need to invalidate the childs pref widths.
(...skipping 2849 matching lines...) Expand 10 before | Expand all | Expand 10 after
4384 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const 4384 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const
4385 { 4385 {
4386 showRenderObject(); 4386 showRenderObject();
4387 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) 4387 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box())
4388 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); 4388 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1);
4389 } 4389 }
4390 4390
4391 #endif 4391 #endif
4392 4392
4393 } // namespace blink 4393 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698