OLD | NEW |
---|---|
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 1055 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1066 | 1066 |
1067 if (child->previousSibling()) | 1067 if (child->previousSibling()) |
1068 child->previousSibling()->setNextSibling(child->nextSibling()); | 1068 child->previousSibling()->setNextSibling(child->nextSibling()); |
1069 if (child->nextSibling()) | 1069 if (child->nextSibling()) |
1070 child->nextSibling()->setPreviousSibling(child->previousSibling()); | 1070 child->nextSibling()->setPreviousSibling(child->previousSibling()); |
1071 } | 1071 } |
1072 | 1072 |
1073 child->children()->setFirstChild(0); | 1073 child->children()->setFirstChild(0); |
1074 child->m_next = nullptr; | 1074 child->m_next = nullptr; |
1075 | 1075 |
1076 // Remove all the information in the flow thread associated with the leftove r anonymous block. | |
1077 child->removeFromRenderFlowThread(); | |
Julien - ping for review
2014/09/30 00:39:32
Are we sure we don't insert children into the flow
mstensho (USE GERRIT)
2014/09/30 20:20:28
This is an anonymous block, and just became childl
| |
1078 | |
1079 // RenderGrid keeps track of its children, we must notify it about changes i n the tree. | 1076 // RenderGrid keeps track of its children, we must notify it about changes i n the tree. |
1080 if (child->parent()->isRenderGrid()) | 1077 if (child->parent()->isRenderGrid()) |
1081 toRenderGrid(child->parent())->dirtyGrid(); | 1078 toRenderGrid(child->parent())->dirtyGrid(); |
1082 | 1079 |
1083 child->setParent(0); | 1080 child->setParent(0); |
1084 child->setPreviousSibling(0); | 1081 child->setPreviousSibling(0); |
1085 child->setNextSibling(0); | 1082 child->setNextSibling(0); |
1086 | 1083 |
1087 child->destroy(); | 1084 child->destroy(); |
1088 } | 1085 } |
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1518 return; | 1515 return; |
1519 | 1516 |
1520 IntRect inflatedRect = pixelSnappedBorderBoxRect(); | 1517 IntRect inflatedRect = pixelSnappedBorderBoxRect(); |
1521 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect); | 1518 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect); |
1522 addVisualOverflow(inflatedRect); | 1519 addVisualOverflow(inflatedRect); |
1523 } | 1520 } |
1524 | 1521 |
1525 bool RenderBlock::createsBlockFormattingContext() const | 1522 bool RenderBlock::createsBlockFormattingContext() const |
1526 { | 1523 { |
1527 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || isFlexItemIncludingDeprecated() | 1524 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() || hasOverflowClip() || isFlexItemIncludingDeprecated() |
1528 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell() || isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement( ) || style()->columnSpan(); | 1525 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell() || isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement( ) || (document().regionBasedColumnsEnabled() ? isColumnSpanAll() : style()->colu mnSpan()); |
1529 } | 1526 } |
1530 | 1527 |
1531 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child) | 1528 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R enderBox* child) |
1532 { | 1529 { |
1533 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into | 1530 // FIXME: Technically percentage height objects only need a relayout if thei r percentage isn't going to be turned into |
1534 // an auto value. Add a method to determine this, so that we can avoid the r elayout. | 1531 // an auto value. Add a method to determine this, so that we can avoid the r elayout. |
1535 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( ))) | 1532 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView( ))) |
1536 child->setChildNeedsLayout(MarkOnlyThis); | 1533 child->setChildNeedsLayout(MarkOnlyThis); |
1537 | 1534 |
1538 // 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. | 1535 // 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 2856 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4395 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const | 4392 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const |
4396 { | 4393 { |
4397 showRenderObject(); | 4394 showRenderObject(); |
4398 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) | 4395 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) |
4399 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); | 4396 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); |
4400 } | 4397 } |
4401 | 4398 |
4402 #endif | 4399 #endif |
4403 | 4400 |
4404 } // namespace blink | 4401 } // namespace blink |
OLD | NEW |