| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> | 2 * Copyright (C) 2006 Oliver Hunt <ojh16@student.canterbury.ac.nz> |
| 3 * Copyright (C) 2006 Apple Inc. All rights reserved. | 3 * Copyright (C) 2006 Apple Inc. All rights reserved. |
| 4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 if (!textLayoutObject) { | 141 if (!textLayoutObject) { |
| 142 LayoutInline::removeChild(child); | 142 LayoutInline::removeChild(child); |
| 143 return; | 143 return; |
| 144 } | 144 } |
| 145 Vector<SVGTextLayoutAttributes*, 2> affectedAttributes; | 145 Vector<SVGTextLayoutAttributes*, 2> affectedAttributes; |
| 146 textLayoutObject->subtreeChildWillBeRemoved(child, affectedAttributes); | 146 textLayoutObject->subtreeChildWillBeRemoved(child, affectedAttributes); |
| 147 LayoutInline::removeChild(child); | 147 LayoutInline::removeChild(child); |
| 148 textLayoutObject->subtreeChildWasRemoved(affectedAttributes); | 148 textLayoutObject->subtreeChildWasRemoved(affectedAttributes); |
| 149 } | 149 } |
| 150 | 150 |
| 151 void LayoutSVGInline::invalidateTreeIfNeeded(PaintInvalidationState& paintInvali
dationState) | 151 void LayoutSVGInline::invalidateTreeIfNeeded(const PaintInvalidationState& paint
InvalidationState) |
| 152 { | 152 { |
| 153 ASSERT(!needsLayout()); | 153 ASSERT(!needsLayout()); |
| 154 | 154 |
| 155 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) | 155 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) |
| 156 return; | 156 return; |
| 157 | 157 |
| 158 PaintInvalidationReason reason = invalidatePaintIfNeeded(paintInvalidationSt
ate, paintInvalidationState.paintInvalidationContainer()); | 158 PaintInvalidationState newPaintInvalidationState(paintInvalidationState, *th
is); |
| 159 clearPaintInvalidationState(paintInvalidationState); | 159 PaintInvalidationReason reason = invalidatePaintIfNeeded(newPaintInvalidatio
nState); |
| 160 clearPaintInvalidationFlags(newPaintInvalidationState); |
| 160 | 161 |
| 161 if (reason == PaintInvalidationDelayedFull) | 162 if (reason == PaintInvalidationDelayedFull) |
| 162 paintInvalidationState.pushDelayedPaintInvalidationTarget(*this); | 163 paintInvalidationState.pushDelayedPaintInvalidationTarget(*this); |
| 163 | 164 |
| 164 PaintInvalidationState childTreeWalkState(paintInvalidationState, *this, pai
ntInvalidationState.paintInvalidationContainer()); | |
| 165 if (reason == PaintInvalidationSVGResourceChange) | 165 if (reason == PaintInvalidationSVGResourceChange) |
| 166 childTreeWalkState.setForceSubtreeInvalidationWithinContainer(); | 166 newPaintInvalidationState.setForceSubtreeInvalidationWithinContainer(); |
| 167 invalidatePaintOfSubtreesIfNeeded(childTreeWalkState); | 167 |
| 168 newPaintInvalidationState.updatePaintOffsetAndClipForChildren(); |
| 169 invalidatePaintOfSubtreesIfNeeded(newPaintInvalidationState); |
| 168 } | 170 } |
| 169 | 171 |
| 170 } // namespace blink | 172 } // namespace blink |
| OLD | NEW |