OLD | NEW |
1 /** | 1 /** |
2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) | 2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) |
3 * (C) 1997 Torben Weis (weis@kde.org) | 3 * (C) 1997 Torben Weis (weis@kde.org) |
4 * (C) 1998 Waldo Bastian (bastian@kde.org) | 4 * (C) 1998 Waldo Bastian (bastian@kde.org) |
5 * (C) 1999 Lars Knoll (knoll@kde.org) | 5 * (C) 1999 Lars Knoll (knoll@kde.org) |
6 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 6 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r
ights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 if (last && !last->isTableCell() && last->parent() && last->parent()->is
Anonymous() && !last->parent()->isBeforeOrAfterContent()) { | 111 if (last && !last->isTableCell() && last->parent() && last->parent()->is
Anonymous() && !last->parent()->isBeforeOrAfterContent()) { |
112 last->parent()->addChild(child, beforeChild); | 112 last->parent()->addChild(child, beforeChild); |
113 return; | 113 return; |
114 } | 114 } |
115 | 115 |
116 RenderTableCell* cell = RenderTableCell::createAnonymousWithParentRender
er(this); | 116 RenderTableCell* cell = RenderTableCell::createAnonymousWithParentRender
er(this); |
117 addChild(cell, beforeChild); | 117 addChild(cell, beforeChild); |
118 cell->addChild(child); | 118 cell->addChild(child); |
119 return; | 119 return; |
120 } | 120 } |
121 | 121 |
122 // If the next renderer is actually wrapped in an anonymous table cell, we n
eed to go up and find that. | 122 if (beforeChild && beforeChild->parent() != this) |
123 while (beforeChild && beforeChild->parent() != this) | 123 beforeChild = splitAnonymousBoxesAroundChild(beforeChild); |
124 beforeChild = beforeChild->parent(); | |
125 | 124 |
126 RenderTableCell* cell = toRenderTableCell(child); | 125 RenderTableCell* cell = toRenderTableCell(child); |
127 | 126 |
128 // Generated content can result in us having a null section so make sure to
null check our parent. | 127 // Generated content can result in us having a null section so make sure to
null check our parent. |
129 if (parent()) | 128 if (parent()) |
130 section()->addCell(cell, this); | 129 section()->addCell(cell, this); |
131 | 130 |
132 ASSERT(!beforeChild || beforeChild->isTableCell()); | 131 ASSERT(!beforeChild || beforeChild->isTableCell()); |
133 RenderBox::addChild(cell, beforeChild); | 132 RenderBox::addChild(cell, beforeChild); |
134 | 133 |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
249 { | 248 { |
250 RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyle(parent->sty
le()); | 249 RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyle(parent->sty
le()); |
251 newStyle->setDisplay(TABLE_ROW); | 250 newStyle->setDisplay(TABLE_ROW); |
252 | 251 |
253 RenderTableRow* newRow = new (parent->renderArena()) RenderTableRow(parent->
document() /* is anonymous */); | 252 RenderTableRow* newRow = new (parent->renderArena()) RenderTableRow(parent->
document() /* is anonymous */); |
254 newRow->setStyle(newStyle.release()); | 253 newRow->setStyle(newStyle.release()); |
255 return newRow; | 254 return newRow; |
256 } | 255 } |
257 | 256 |
258 } // namespace WebCore | 257 } // namespace WebCore |
OLD | NEW |