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

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

Issue 242203003: [New Multicolumn] Make floats affect heights correctly. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 8 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 1457 matching lines...) Expand 10 before | Expand all | Expand 10 after
1468 return; 1468 return;
1469 1469
1470 IntRect inflatedRect = pixelSnappedBorderBoxRect(); 1470 IntRect inflatedRect = pixelSnappedBorderBoxRect();
1471 RenderTheme::theme().adjustRepaintRect(this, inflatedRect); 1471 RenderTheme::theme().adjustRepaintRect(this, inflatedRect);
1472 addVisualOverflow(inflatedRect); 1472 addVisualOverflow(inflatedRect);
1473 } 1473 }
1474 1474
1475 bool RenderBlock::createsBlockFormattingContext() const 1475 bool RenderBlock::createsBlockFormattingContext() const
1476 { 1476 {
1477 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || (parent() && parent()->isFlexibleBoxIncludingDeprecated()) 1477 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || (parent() && parent()->isFlexibleBoxIncludingDeprecated())
1478 || style()->specifiesColumns() || isTableCell() || isTableCaption() || i sFieldset() || isWritingModeRoot() || isDocumentElement() || style()->columnSpan (); 1478 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell() || isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement( ) || style()->columnSpan();
1479 } 1479 }
1480 1480
1481 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child) 1481 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child)
1482 { 1482 {
1483 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into 1483 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into
1484 // an auto value. Add a method to determine this, so that we can avoid the r elayout. 1484 // an auto value. Add a method to determine this, so that we can avoid the r elayout.
1485 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( ))) 1485 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( )))
1486 child->setChildNeedsLayout(MarkOnlyThis); 1486 child->setChildNeedsLayout(MarkOnlyThis);
1487 1487
1488 // 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. 1488 // 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 3410 matching lines...) Expand 10 before | Expand all | Expand 10 after
4899 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const 4899 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const
4900 { 4900 {
4901 showRenderObject(); 4901 showRenderObject();
4902 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) 4902 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box())
4903 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); 4903 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1);
4904 } 4904 }
4905 4905
4906 #endif 4906 #endif
4907 4907
4908 } // namespace WebCore 4908 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698