Chromium Code Reviews| 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, 2007, 2008, 2009, 2010 Apple Inc. All r ights reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All r ights 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 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 83 RenderBlock::styleDidChange(diff, oldStyle); | 83 RenderBlock::styleDidChange(diff, oldStyle); |
| 84 propagateStyleToAnonymousChildren(); | 84 propagateStyleToAnonymousChildren(); |
| 85 | 85 |
| 86 ETableLayout oldTableLayout = oldStyle ? oldStyle->tableLayout() : TAUTO; | 86 ETableLayout oldTableLayout = oldStyle ? oldStyle->tableLayout() : TAUTO; |
| 87 | 87 |
| 88 // In the collapsed border model, there is no cell spacing. | 88 // In the collapsed border model, there is no cell spacing. |
| 89 m_hSpacing = collapseBorders() ? 0 : style()->horizontalBorderSpacing(); | 89 m_hSpacing = collapseBorders() ? 0 : style()->horizontalBorderSpacing(); |
| 90 m_vSpacing = collapseBorders() ? 0 : style()->verticalBorderSpacing(); | 90 m_vSpacing = collapseBorders() ? 0 : style()->verticalBorderSpacing(); |
| 91 m_columnPos[0] = m_hSpacing; | 91 m_columnPos[0] = m_hSpacing; |
| 92 | 92 |
| 93 if (!m_tableLayout || style()->tableLayout() != oldTableLayout) { | 93 if (!m_tableLayout || style()->tableLayout() != oldTableLayout || diff.needs FullLayout()) { |
|
mstensho (USE GERRIT)
2014/05/06 13:28:59
It seems wrong to recreate the table layout object
| |
| 94 if (m_tableLayout) | 94 if (m_tableLayout) |
| 95 m_tableLayout->willChangeTableLayout(); | 95 m_tableLayout->willChangeTableLayout(); |
| 96 | 96 |
| 97 // According to the CSS2 spec, you only use fixed table layout if an | 97 // According to the CSS2 spec, you only use fixed table layout if an |
| 98 // explicit width is specified on the table. Auto width implies auto ta ble layout. | 98 // explicit width is specified on the table. Auto width implies auto ta ble layout. |
| 99 if (style()->tableLayout() == TFIXED && !style()->logicalWidth().isAuto( )) | 99 if (style()->tableLayout() == TFIXED && !style()->logicalWidth().isAuto( )) |
| 100 m_tableLayout = adoptPtr(new FixedTableLayout(this)); | 100 m_tableLayout = adoptPtr(new FixedTableLayout(this)); |
| 101 else | 101 else |
| 102 m_tableLayout = adoptPtr(new AutoTableLayout(this)); | 102 m_tableLayout = adoptPtr(new AutoTableLayout(this)); |
| 103 } | 103 } |
| (...skipping 1353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1457 const BorderValue& RenderTable::tableEndBorderAdjoiningCell(const RenderTableCel l* cell) const | 1457 const BorderValue& RenderTable::tableEndBorderAdjoiningCell(const RenderTableCel l* cell) const |
| 1458 { | 1458 { |
| 1459 ASSERT(cell->isFirstOrLastCellInRow()); | 1459 ASSERT(cell->isFirstOrLastCellInRow()); |
| 1460 if (hasSameDirectionAs(cell->row())) | 1460 if (hasSameDirectionAs(cell->row())) |
| 1461 return style()->borderEnd(); | 1461 return style()->borderEnd(); |
| 1462 | 1462 |
| 1463 return style()->borderStart(); | 1463 return style()->borderStart(); |
| 1464 } | 1464 } |
| 1465 | 1465 |
| 1466 } | 1466 } |
| OLD | NEW |