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, 2009 Apple Inc. All rights reserved. | 7 * Copyright (C) 2003, 2004, 2005, 2006, 2009 Apple Inc. All rights reserved. |
8 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 8 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
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 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 | 48 |
49 LayoutTableBoxComponent::StyleDidChange(diff, old_style); | 49 LayoutTableBoxComponent::StyleDidChange(diff, old_style); |
50 | 50 |
51 if (!old_style) | 51 if (!old_style) |
52 return; | 52 return; |
53 | 53 |
54 LayoutTable* table = this->Table(); | 54 LayoutTable* table = this->Table(); |
55 if (!table) | 55 if (!table) |
56 return; | 56 return; |
57 | 57 |
58 LayoutTableBoxComponent::InvalidateCollapsedBordersOnStyleChange( | 58 if (LayoutTableBoxComponent::NeedsInvalidateCollapsedBordersOnStyleChange( |
59 *this, *table, diff, *old_style); | 59 *this, *table, diff, *old_style)) |
| 60 table->SetNeedsInvalidateCollapsedBordersForAllCells(); |
60 | 61 |
61 if ((old_style->LogicalWidth() != Style()->LogicalWidth()) || | 62 if ((old_style->LogicalWidth() != Style()->LogicalWidth()) || |
62 LayoutTableBoxComponent::DoCellsHaveDirtyWidth(*this, *table, diff, | 63 LayoutTableBoxComponent::DoCellsHaveDirtyWidth(*this, *table, diff, |
63 *old_style)) { | 64 *old_style)) { |
64 // TODO(dgrogan): Optimization opportunities: | 65 // TODO(dgrogan): Optimization opportunities: |
65 // (1) Only mark cells which are affected by this col, not every cell in the | 66 // (1) Only mark cells which are affected by this col, not every cell in the |
66 // table. | 67 // table. |
67 // (2) If only the col width changes and its border width doesn't, do the | 68 // (2) If only the col width changes and its border width doesn't, do the |
68 // cells need to be marked as needing layout or just given dirty | 69 // cells need to be marked as needing layout or just given dirty |
69 // widths? | 70 // widths? |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
190 const BorderValue& LayoutTableCol::BorderAdjoiningCellAfter( | 191 const BorderValue& LayoutTableCol::BorderAdjoiningCellAfter( |
191 const LayoutTableCell* cell) const { | 192 const LayoutTableCell* cell) const { |
192 DCHECK_EQ(Table() | 193 DCHECK_EQ(Table() |
193 ->ColElementAtAbsoluteColumn(cell->AbsoluteColumnIndex() - 1) | 194 ->ColElementAtAbsoluteColumn(cell->AbsoluteColumnIndex() - 1) |
194 .InnermostColOrColGroup(), | 195 .InnermostColOrColGroup(), |
195 this); | 196 this); |
196 return Style()->BorderEnd(); | 197 return Style()->BorderEnd(); |
197 } | 198 } |
198 | 199 |
199 } // namespace blink | 200 } // namespace blink |
OLD | NEW |