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, 2008, 2009, 2010 Apple Inc. All rights
reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010 Apple Inc. All rights
reserved. |
8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.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 569 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
580 for (RenderObject* o = cell->firstChild(); o; o = o->nextSibling())
{ | 580 for (RenderObject* o = cell->firstChild(); o; o = o->nextSibling())
{ |
581 if (!o->isText() && o->style()->logicalHeight().isPercent() && (
flexAllChildren || o->isReplaced() || (o->isBox() && toRenderBox(o)->scrollsOver
flow()))) { | 581 if (!o->isText() && o->style()->logicalHeight().isPercent() && (
flexAllChildren || o->isReplaced() || (o->isBox() && toRenderBox(o)->scrollsOver
flow()))) { |
582 // Tables with no sections do not flex. | 582 // Tables with no sections do not flex. |
583 if (!o->isTable() || toRenderTable(o)->hasSections()) { | 583 if (!o->isTable() || toRenderTable(o)->hasSections()) { |
584 o->setNeedsLayout(true, MarkOnlyThis); | 584 o->setNeedsLayout(true, MarkOnlyThis); |
585 cellChildrenFlex = true; | 585 cellChildrenFlex = true; |
586 } | 586 } |
587 } | 587 } |
588 } | 588 } |
589 | 589 |
590 if (HashSet<RenderBox*>* percentHeightDescendants = cell->percentHei
ghtDescendants()) { | 590 if (ListHashSet<RenderBox*>* percentHeightDescendants = cell->percen
tHeightDescendants()) { |
591 HashSet<RenderBox*>::iterator end = percentHeightDescendants->en
d(); | 591 ListHashSet<RenderBox*>::iterator end = percentHeightDescendants
->end(); |
592 for (HashSet<RenderBox*>::iterator it = percentHeightDescendants
->begin(); it != end; ++it) { | 592 for (ListHashSet<RenderBox*>::iterator it = percentHeightDescend
ants->begin(); it != end; ++it) { |
593 RenderBox* box = *it; | 593 RenderBox* box = *it; |
594 if (!box->isReplaced() && !box->scrollsOverflow() && !flexAl
lChildren) | 594 if (!box->isReplaced() && !box->scrollsOverflow() && !flexAl
lChildren) |
595 continue; | 595 continue; |
596 | 596 |
597 while (box != cell) { | 597 while (box != cell) { |
598 if (box->normalChildNeedsLayout()) | 598 if (box->normalChildNeedsLayout()) |
599 break; | 599 break; |
600 box->setChildNeedsLayout(true, MarkOnlyThis); | 600 box->setChildNeedsLayout(true, MarkOnlyThis); |
601 box = box->containingBlock(); | 601 box = box->containingBlock(); |
602 ASSERT(box); | 602 ASSERT(box); |
(...skipping 873 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1476 if (!cell->styleForCellFlow()->isLeftToRightDirection()) | 1476 if (!cell->styleForCellFlow()->isLeftToRightDirection()) |
1477 cellLocation.setX(table()->columnPositions()[table()->numEffCols()] - ta
ble()->columnPositions()[table()->colToEffCol(cell->col() + cell->colSpan())] +
horizontalBorderSpacing); | 1477 cellLocation.setX(table()->columnPositions()[table()->numEffCols()] - ta
ble()->columnPositions()[table()->colToEffCol(cell->col() + cell->colSpan())] +
horizontalBorderSpacing); |
1478 else | 1478 else |
1479 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont
alBorderSpacing); | 1479 cellLocation.setX(table()->columnPositions()[effectiveColumn] + horizont
alBorderSpacing); |
1480 | 1480 |
1481 cell->setLogicalLocation(cellLocation); | 1481 cell->setLogicalLocation(cellLocation); |
1482 view()->addLayoutDelta(oldCellLocation - cell->location()); | 1482 view()->addLayoutDelta(oldCellLocation - cell->location()); |
1483 } | 1483 } |
1484 | 1484 |
1485 } // namespace WebCore | 1485 } // namespace WebCore |
OLD | NEW |