| 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 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. |
| 5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net) | 5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net) |
| 6 * | 6 * |
| 7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 52 visitor->trace(m_marker); | 52 visitor->trace(m_marker); |
| 53 RenderBlockFlow::trace(visitor); | 53 RenderBlockFlow::trace(visitor); |
| 54 } | 54 } |
| 55 | 55 |
| 56 void RenderListItem::styleDidChange(StyleDifference diff, const RenderStyle* old
Style) | 56 void RenderListItem::styleDidChange(StyleDifference diff, const RenderStyle* old
Style) |
| 57 { | 57 { |
| 58 RenderBlockFlow::styleDidChange(diff, oldStyle); | 58 RenderBlockFlow::styleDidChange(diff, oldStyle); |
| 59 | 59 |
| 60 if (style()->listStyleType() != NoneListStyle | 60 if (style()->listStyleType() != NoneListStyle |
| 61 || (style()->listStyleImage() && !style()->listStyleImage()->errorOccurr
ed())) { | 61 || (style()->listStyleImage() && !style()->listStyleImage()->errorOccurr
ed())) { |
| 62 RefPtr<RenderStyle> newStyle = RenderStyle::create(); | |
| 63 // The marker always inherits from the list item, regardless of where it
might end | |
| 64 // up (e.g., in some deeply nested line box). See CSS3 spec. | |
| 65 newStyle->inheritFrom(style()); | |
| 66 if (!m_marker) | 62 if (!m_marker) |
| 67 m_marker = RenderListMarker::createAnonymous(this); | 63 m_marker = RenderListMarker::createAnonymous(this); |
| 68 m_marker->setStyle(newStyle.release()); | 64 m_marker->listItemStyleDidChange(); |
| 69 } else if (m_marker) { | 65 } else if (m_marker) { |
| 70 m_marker->destroy(); | 66 m_marker->destroy(); |
| 71 m_marker = nullptr; | 67 m_marker = nullptr; |
| 72 } | 68 } |
| 73 } | 69 } |
| 74 | 70 |
| 75 void RenderListItem::willBeDestroyed() | 71 void RenderListItem::willBeDestroyed() |
| 76 { | 72 { |
| 77 if (m_marker) { | 73 if (m_marker) { |
| 78 m_marker->destroy(); | 74 m_marker->destroy(); |
| (...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 522 // assume that all the following ones have too. | 518 // assume that all the following ones have too. |
| 523 // This gives us the opportunity to stop here and avoid | 519 // This gives us the opportunity to stop here and avoid |
| 524 // marking the same nodes again. | 520 // marking the same nodes again. |
| 525 break; | 521 break; |
| 526 } | 522 } |
| 527 item->updateValue(); | 523 item->updateValue(); |
| 528 } | 524 } |
| 529 } | 525 } |
| 530 | 526 |
| 531 } // namespace blink | 527 } // namespace blink |
| OLD | NEW |