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 1047 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1058 | 1058 |
1059 if (child->previousSibling()) | 1059 if (child->previousSibling()) |
1060 child->previousSibling()->setNextSibling(child->nextSibling()); | 1060 child->previousSibling()->setNextSibling(child->nextSibling()); |
1061 if (child->nextSibling()) | 1061 if (child->nextSibling()) |
1062 child->nextSibling()->setPreviousSibling(child->previousSibling()); | 1062 child->nextSibling()->setPreviousSibling(child->previousSibling()); |
1063 } | 1063 } |
1064 | 1064 |
1065 child->children()->setFirstChild(0); | 1065 child->children()->setFirstChild(0); |
1066 child->m_next = nullptr; | 1066 child->m_next = nullptr; |
1067 | 1067 |
1068 // Remove all the information in the flow thread associated with the leftove
r anonymous block. | |
1069 child->removeFromRenderFlowThread(); | |
1070 | |
1071 // RenderGrid keeps track of its children, we must notify it about changes i
n the tree. | 1068 // RenderGrid keeps track of its children, we must notify it about changes i
n the tree. |
1072 if (child->parent()->isRenderGrid()) | 1069 if (child->parent()->isRenderGrid()) |
1073 toRenderGrid(child->parent())->dirtyGrid(); | 1070 toRenderGrid(child->parent())->dirtyGrid(); |
1074 | 1071 |
1075 child->setParent(0); | 1072 child->setParent(0); |
1076 child->setPreviousSibling(0); | 1073 child->setPreviousSibling(0); |
1077 child->setNextSibling(0); | 1074 child->setNextSibling(0); |
1078 | 1075 |
1079 child->destroy(); | 1076 child->destroy(); |
1080 } | 1077 } |
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1510 return; | 1507 return; |
1511 | 1508 |
1512 IntRect inflatedRect = pixelSnappedBorderBoxRect(); | 1509 IntRect inflatedRect = pixelSnappedBorderBoxRect(); |
1513 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect); | 1510 RenderTheme::theme().adjustPaintInvalidationRect(this, inflatedRect); |
1514 addVisualOverflow(inflatedRect); | 1511 addVisualOverflow(inflatedRect); |
1515 } | 1512 } |
1516 | 1513 |
1517 bool RenderBlock::createsBlockFormattingContext() const | 1514 bool RenderBlock::createsBlockFormattingContext() const |
1518 { | 1515 { |
1519 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() ||
hasOverflowClip() || isFlexItemIncludingDeprecated() | 1516 return isInlineBlockOrInlineTable() || isFloatingOrOutOfFlowPositioned() ||
hasOverflowClip() || isFlexItemIncludingDeprecated() |
1520 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell()
|| isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement(
) || style()->columnSpan(); | 1517 || style()->specifiesColumns() || isRenderFlowThread() || isTableCell()
|| isTableCaption() || isFieldset() || isWritingModeRoot() || isDocumentElement(
) || (document().regionBasedColumnsEnabled() ? isColumnSpanAll() : style()->colu
mnSpan()); |
1521 } | 1518 } |
1522 | 1519 |
1523 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R
enderBox* child) | 1520 void RenderBlock::updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, R
enderBox* child) |
1524 { | 1521 { |
1525 // FIXME: Technically percentage height objects only need a relayout if thei
r percentage isn't going to be turned into | 1522 // FIXME: Technically percentage height objects only need a relayout if thei
r percentage isn't going to be turned into |
1526 // an auto value. Add a method to determine this, so that we can avoid the r
elayout. | 1523 // an auto value. Add a method to determine this, so that we can avoid the r
elayout. |
1527 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView(
))) | 1524 if (relayoutChildren || (child->hasRelativeLogicalHeight() && !isRenderView(
))) |
1528 child->setChildNeedsLayout(MarkOnlyThis); | 1525 child->setChildNeedsLayout(MarkOnlyThis); |
1529 | 1526 |
1530 // 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. | 1527 // 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 2581 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4112 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render
Object* obj) const | 4109 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render
Object* obj) const |
4113 { | 4110 { |
4114 showRenderObject(); | 4111 showRenderObject(); |
4115 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) | 4112 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) |
4116 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); | 4113 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); |
4117 } | 4114 } |
4118 | 4115 |
4119 #endif | 4116 #endif |
4120 | 4117 |
4121 } // namespace blink | 4118 } // namespace blink |
OLD | NEW |