| 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 728 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 739 if (object->style()->width().isIntrinsicOrAuto() || object->style()->height(
).isIntrinsicOrAuto() || object->style()->height().hasPercent()) | 739 if (object->style()->width().isIntrinsicOrAuto() || object->style()->height(
).isIntrinsicOrAuto() || object->style()->height().hasPercent()) |
| 740 return false; | 740 return false; |
| 741 | 741 |
| 742 // Table parts can't be relayout roots since the table is responsible for la
youting all the parts. | 742 // Table parts can't be relayout roots since the table is responsible for la
youting all the parts. |
| 743 if (object->isTablePart()) | 743 if (object->isTablePart()) |
| 744 return false; | 744 return false; |
| 745 | 745 |
| 746 return true; | 746 return true; |
| 747 } | 747 } |
| 748 | 748 |
| 749 void LayoutObject::markContainerChainForLayout(bool scheduleRelayout, LayoutObje
ct* newRoot, SubtreeLayoutScope* layouter) | 749 void LayoutObject::markContainerChainForLayout(bool scheduleRelayout, SubtreeLay
outScope* layouter) |
| 750 { | 750 { |
| 751 ASSERT(!scheduleRelayout || !newRoot); | |
| 752 ASSERT(!isSetNeedsLayoutForbidden()); | 751 ASSERT(!isSetNeedsLayoutForbidden()); |
| 753 ASSERT(!layouter || this != layouter->root()); | 752 ASSERT(!layouter || this != layouter->root()); |
| 754 | 753 |
| 755 LayoutObject* object = container(); | 754 LayoutObject* object = container(); |
| 756 LayoutObject* last = this; | 755 LayoutObject* last = this; |
| 757 | 756 |
| 758 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self
NeedsLayout() && !normalChildNeedsLayout(); | 757 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self
NeedsLayout() && !normalChildNeedsLayout(); |
| 759 | 758 |
| 760 while (object) { | 759 while (object) { |
| 761 if (object->selfNeedsLayout()) | 760 if (object->selfNeedsLayout()) |
| (...skipping 27 matching lines...) Expand all Loading... |
| 789 object->setNormalChildNeedsLayout(true); | 788 object->setNormalChildNeedsLayout(true); |
| 790 ASSERT(!object->isSetNeedsLayoutForbidden()); | 789 ASSERT(!object->isSetNeedsLayoutForbidden()); |
| 791 } | 790 } |
| 792 | 791 |
| 793 if (layouter) { | 792 if (layouter) { |
| 794 layouter->recordObjectMarkedForLayout(object); | 793 layouter->recordObjectMarkedForLayout(object); |
| 795 if (object == layouter->root()) | 794 if (object == layouter->root()) |
| 796 return; | 795 return; |
| 797 } | 796 } |
| 798 | 797 |
| 799 if (object == newRoot) | |
| 800 return; | |
| 801 | |
| 802 last = object; | 798 last = object; |
| 803 if (scheduleRelayout && objectIsRelayoutBoundary(last)) | 799 if (scheduleRelayout && objectIsRelayoutBoundary(last)) |
| 804 break; | 800 break; |
| 805 object = container; | 801 object = container; |
| 806 } | 802 } |
| 807 | 803 |
| 808 if (scheduleRelayout) | 804 if (scheduleRelayout) |
| 809 last->scheduleRelayout(); | 805 last->scheduleRelayout(); |
| 810 } | 806 } |
| 811 | 807 |
| (...skipping 2497 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3309 const blink::LayoutObject* root = object1; | 3305 const blink::LayoutObject* root = object1; |
| 3310 while (root->parent()) | 3306 while (root->parent()) |
| 3311 root = root->parent(); | 3307 root = root->parent(); |
| 3312 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); | 3308 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); |
| 3313 } else { | 3309 } else { |
| 3314 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); | 3310 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); |
| 3315 } | 3311 } |
| 3316 } | 3312 } |
| 3317 | 3313 |
| 3318 #endif | 3314 #endif |
| OLD | NEW |