| 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 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights
reserved. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights
reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 319 return nextToLast; | 319 return nextToLast; |
| 320 return last; | 320 return last; |
| 321 } | 321 } |
| 322 | 322 |
| 323 void RenderInline::addChildIgnoringContinuation(LayoutObject* newChild, LayoutOb
ject* beforeChild) | 323 void RenderInline::addChildIgnoringContinuation(LayoutObject* newChild, LayoutOb
ject* beforeChild) |
| 324 { | 324 { |
| 325 // Make sure we don't append things after :after-generated content if we hav
e it. | 325 // Make sure we don't append things after :after-generated content if we hav
e it. |
| 326 if (!beforeChild && isAfterContent(lastChild())) | 326 if (!beforeChild && isAfterContent(lastChild())) |
| 327 beforeChild = lastChild(); | 327 beforeChild = lastChild(); |
| 328 | 328 |
| 329 if (!newChild->isInline() && !newChild->isFloatingOrOutOfFlowPositioned()) { | 329 if (!newChild->isInline() && !newChild->isFloatingOrOutOfFlowPositioned() &&
!newChild->isTablePart()) { |
| 330 // We are placing a block inside an inline. We have to perform a split o
f this | 330 // We are placing a block inside an inline. We have to perform a split o
f this |
| 331 // inline into continuations. This involves creating an anonymous block
box to hold | 331 // inline into continuations. This involves creating an anonymous block
box to hold |
| 332 // |newChild|. We then make that block box a continuation of this inlin
e. We take all of | 332 // |newChild|. We then make that block box a continuation of this inlin
e. We take all of |
| 333 // the children after |beforeChild| and put them in a clone of this obje
ct. | 333 // the children after |beforeChild| and put them in a clone of this obje
ct. |
| 334 RefPtr<LayoutStyle> newStyle = LayoutStyle::createAnonymousStyleWithDisp
lay(styleRef(), BLOCK); | 334 RefPtr<LayoutStyle> newStyle = LayoutStyle::createAnonymousStyleWithDisp
lay(styleRef(), BLOCK); |
| 335 | 335 |
| 336 // If inside an inline affected by in-flow positioning the block needs t
o be affected by it too. | 336 // If inside an inline affected by in-flow positioning the block needs t
o be affected by it too. |
| 337 // Giving the block a layer like this allows it to collect the x/y offse
ts from inline parents later. | 337 // Giving the block a layer like this allows it to collect the x/y offse
ts from inline parents later. |
| 338 if (LayoutObject* positionedAncestor = inFlowPositionedInlineAncestor(th
is)) | 338 if (LayoutObject* positionedAncestor = inFlowPositionedInlineAncestor(th
is)) |
| 339 newStyle->setPosition(positionedAncestor->style()->position()); | 339 newStyle->setPosition(positionedAncestor->style()->position()); |
| (...skipping 1112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1452 } | 1452 } |
| 1453 | 1453 |
| 1454 void RenderInline::invalidateDisplayItemClients(DisplayItemList* displayItemList
) const | 1454 void RenderInline::invalidateDisplayItemClients(DisplayItemList* displayItemList
) const |
| 1455 { | 1455 { |
| 1456 RenderBoxModelObject::invalidateDisplayItemClients(displayItemList); | 1456 RenderBoxModelObject::invalidateDisplayItemClients(displayItemList); |
| 1457 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLineBox()) | 1457 for (InlineFlowBox* box = firstLineBox(); box; box = box->nextLineBox()) |
| 1458 displayItemList->invalidate(box->displayItemClient()); | 1458 displayItemList->invalidate(box->displayItemClient()); |
| 1459 } | 1459 } |
| 1460 | 1460 |
| 1461 } // namespace blink | 1461 } // namespace blink |
| OLD | NEW |