| 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) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. |
| 7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
| 9 * | 9 * |
| 10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
| (...skipping 632 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 643 | 643 |
| 644 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self
NeedsLayout() && !normalChildNeedsLayout(); | 644 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self
NeedsLayout() && !normalChildNeedsLayout(); |
| 645 | 645 |
| 646 while (object) { | 646 while (object) { |
| 647 // Don't mark the outermost object of an unrooted subtree. That object w
ill be | 647 // Don't mark the outermost object of an unrooted subtree. That object w
ill be |
| 648 // marked when the subtree is added to the document. | 648 // marked when the subtree is added to the document. |
| 649 RenderObject* container = object->container(); | 649 RenderObject* container = object->container(); |
| 650 if (!container && !object->isRenderView()) | 650 if (!container && !object->isRenderView()) |
| 651 return; | 651 return; |
| 652 if (!last->isText() && (last->style()->position() == FixedPosition || la
st->style()->position() == AbsolutePosition)) { | 652 if (!last->isText() && (last->style()->position() == FixedPosition || la
st->style()->position() == AbsolutePosition)) { |
| 653 bool willSkipRelativelyPositionedInlines = !object->isRenderBlock(); | 653 bool willSkipRelativelyPositionedInlines = !object->isRenderBlock()
|| object->isAnonymousBlock(); |
| 654 while (object && !object->isRenderBlock()) // Skip relatively positi
oned inlines and get to the enclosing RenderBlock. | 654 // Skip relatively positioned inlines and anonymous blocks to get to
the enclosing RenderBlock. |
| 655 while (object && (!object->isRenderBlock() || object->isAnonymousBlo
ck())) |
| 655 object = object->container(); | 656 object = object->container(); |
| 656 if (!object || object->m_posChildNeedsLayout) | 657 if (!object || object->m_posChildNeedsLayout) |
| 657 return; | 658 return; |
| 658 if (willSkipRelativelyPositionedInlines) | 659 if (willSkipRelativelyPositionedInlines) |
| 659 container = object->container(); | 660 container = object->container(); |
| 660 object->m_posChildNeedsLayout = true; | 661 object->m_posChildNeedsLayout = true; |
| 661 simplifiedNormalFlowLayout = true; | 662 simplifiedNormalFlowLayout = true; |
| 662 ASSERT(!object->isSetNeedsLayoutForbidden()); | 663 ASSERT(!object->isSetNeedsLayoutForbidden()); |
| 663 } else if (simplifiedNormalFlowLayout) { | 664 } else if (simplifiedNormalFlowLayout) { |
| 664 if (object->m_needsSimplifiedNormalFlowLayout) | 665 if (object->m_needsSimplifiedNormalFlowLayout) |
| (...skipping 2162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2827 { | 2828 { |
| 2828 if (object1) { | 2829 if (object1) { |
| 2829 const WebCore::RenderObject* root = object1; | 2830 const WebCore::RenderObject* root = object1; |
| 2830 while (root->parent()) | 2831 while (root->parent()) |
| 2831 root = root->parent(); | 2832 root = root->parent(); |
| 2832 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); | 2833 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); |
| 2833 } | 2834 } |
| 2834 } | 2835 } |
| 2835 | 2836 |
| 2836 #endif | 2837 #endif |
| OLD | NEW |