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 Apple Inc. All r
ights reserved. | 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights 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 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 | 178 |
179 // If we are an anonymous block, then our line boxes might have chil
dren | 179 // If we are an anonymous block, then our line boxes might have chil
dren |
180 // that will outlast this block. In the non-anonymous block case tho
se | 180 // that will outlast this block. In the non-anonymous block case tho
se |
181 // children will be destroyed by the time we return from this functi
on. | 181 // children will be destroyed by the time we return from this functi
on. |
182 if (isAnonymousBlock()) { | 182 if (isAnonymousBlock()) { |
183 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLi
neBox()) { | 183 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLi
neBox()) { |
184 while (InlineBox* childBox = box->firstChild()) | 184 while (InlineBox* childBox = box->firstChild()) |
185 childBox->remove(); | 185 childBox->remove(); |
186 } | 186 } |
187 } | 187 } |
188 } | 188 } else if (parent()) |
| 189 parent()->dirtyLinesFromChangedChild(this); |
189 } | 190 } |
190 | 191 |
191 m_lineBoxes.deleteLineBoxes(renderArena()); | 192 m_lineBoxes.deleteLineBoxes(renderArena()); |
192 | 193 |
193 RenderBox::destroy(); | 194 RenderBox::destroy(); |
194 } | 195 } |
195 | 196 |
196 void RenderBlock::styleWillChange(StyleDifference diff, const RenderStyle* newSt
yle) | 197 void RenderBlock::styleWillChange(StyleDifference diff, const RenderStyle* newSt
yle) |
197 { | 198 { |
198 s_canPropagateFloatIntoSibling = style() ? !isFloatingOrPositioned() && !avo
idsFloats() : false; | 199 s_canPropagateFloatIntoSibling = style() ? !isFloatingOrPositioned() && !avo
idsFloats() : false; |
(...skipping 6186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6385 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render
Object* obj) const | 6386 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m
arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render
Object* obj) const |
6386 { | 6387 { |
6387 showRenderObject(); | 6388 showRenderObject(); |
6388 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) | 6389 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot
Box()) |
6389 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); | 6390 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa
bel2, obj, 1); |
6390 } | 6391 } |
6391 | 6392 |
6392 #endif | 6393 #endif |
6393 | 6394 |
6394 } // namespace WebCore | 6395 } // namespace WebCore |
OLD | NEW |