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 592 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
603 // Someone may have indirectly caused a <q> to split. When this happens
, the :after content | 603 // Someone may have indirectly caused a <q> to split. When this happens
, the :after content |
604 // has to move into the inline continuation. Call updateBeforeAfterCont
ent to ensure that the inline's :after | 604 // has to move into the inline continuation. Call updateBeforeAfterCont
ent to ensure that the inline's :after |
605 // content gets properly destroyed. | 605 // content gets properly destroyed. |
606 bool isLastChild = (currChildNextSibling == blockCurr->lastChild()); | 606 bool isLastChild = (currChildNextSibling == blockCurr->lastChild()); |
607 if (document()->usesBeforeAfterRules()) | 607 if (document()->usesBeforeAfterRules()) |
608 blockCurr->children()->updateBeforeAfterContent(blockCurr, AFTER); | 608 blockCurr->children()->updateBeforeAfterContent(blockCurr, AFTER); |
609 if (isLastChild && currChildNextSibling != blockCurr->lastChild()) | 609 if (isLastChild && currChildNextSibling != blockCurr->lastChild()) |
610 currChildNextSibling = 0; // We destroyed the last child, so now we
need to update | 610 currChildNextSibling = 0; // We destroyed the last child, so now we
need to update |
611 // the value of currChildNextSibling. | 611 // the value of currChildNextSibling. |
612 | 612 |
| 613 // It is possible that positioned objects under blockCurr are going to b
e moved to cloneBlock. |
| 614 // Since we are doing layout anyway, it is easier to blow away the entir
e list, than |
| 615 // traversing down the subtree looking for positioned children and then
remove them |
| 616 // from our positioned objects list. |
| 617 if (currChildNextSibling) |
| 618 blockCurr->removePositionedObjects(0); |
| 619 |
613 // Now we need to take all of the children starting from the first child | 620 // Now we need to take all of the children starting from the first child |
614 // *after* currChild and append them all to the clone. | 621 // *after* currChild and append them all to the clone. |
615 blockCurr->moveChildrenTo(cloneBlock, currChildNextSibling, 0, true); | 622 blockCurr->moveChildrenTo(cloneBlock, currChildNextSibling, 0, true); |
616 | 623 |
617 // Keep walking up the chain. | 624 // Keep walking up the chain. |
618 currChild = curr; | 625 currChild = curr; |
619 currChildNextSibling = currChild->nextSibling(); | 626 currChildNextSibling = currChild->nextSibling(); |
620 curr = toRenderBoxModelObject(curr->parent()); | 627 curr = toRenderBoxModelObject(curr->parent()); |
621 } | 628 } |
622 | 629 |
(...skipping 6707 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7330 } | 7337 } |
7331 | 7338 |
7332 String ValueToString<RenderBlock::FloatingObject*>::string(const RenderBlock::Fl
oatingObject* floatingObject) | 7339 String ValueToString<RenderBlock::FloatingObject*>::string(const RenderBlock::Fl
oatingObject* floatingObject) |
7333 { | 7340 { |
7334 return String::format("%p (%dx%d %dx%d)", floatingObject, floatingObject->x(
), floatingObject->y(), floatingObject->maxX(), floatingObject->maxY()); | 7341 return String::format("%p (%dx%d %dx%d)", floatingObject, floatingObject->x(
), floatingObject->y(), floatingObject->maxX(), floatingObject->maxY()); |
7335 } | 7342 } |
7336 | 7343 |
7337 #endif | 7344 #endif |
7338 | 7345 |
7339 } // namespace WebCore | 7346 } // namespace WebCore |
OLD | NEW |