OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2006 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> | 4 * Copyright (C) 2008 Dirk Schulze <krit@webkit.org> |
5 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 5 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
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 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 } | 204 } |
205 } | 205 } |
206 } | 206 } |
207 | 207 |
208 void RenderSVGResource::markForLayoutAndParentResourceInvalidation(RenderObject*
object, bool needsLayout) | 208 void RenderSVGResource::markForLayoutAndParentResourceInvalidation(RenderObject*
object, bool needsLayout) |
209 { | 209 { |
210 ASSERT(object); | 210 ASSERT(object); |
211 ASSERT(object->node()); | 211 ASSERT(object->node()); |
212 | 212 |
213 if (needsLayout && !object->documentBeingDestroyed()) | 213 if (needsLayout && !object->documentBeingDestroyed()) |
214 object->setNeedsLayout(); | 214 object->setNeedsLayoutAndFullRepaint(); |
215 | 215 |
216 removeFromCacheAndInvalidateDependencies(object, needsLayout); | 216 removeFromCacheAndInvalidateDependencies(object, needsLayout); |
217 | 217 |
218 // Invalidate resources in ancestor chain, if needed. | 218 // Invalidate resources in ancestor chain, if needed. |
219 RenderObject* current = object->parent(); | 219 RenderObject* current = object->parent(); |
220 while (current) { | 220 while (current) { |
221 removeFromCacheAndInvalidateDependencies(current, needsLayout); | 221 removeFromCacheAndInvalidateDependencies(current, needsLayout); |
222 | 222 |
223 if (current->isSVGResourceContainer()) { | 223 if (current->isSVGResourceContainer()) { |
224 // This will process the rest of the ancestors. | 224 // This will process the rest of the ancestors. |
225 toRenderSVGResourceContainer(current)->removeAllClientsFromCache(); | 225 toRenderSVGResourceContainer(current)->removeAllClientsFromCache(); |
226 break; | 226 break; |
227 } | 227 } |
228 | 228 |
229 current = current->parent(); | 229 current = current->parent(); |
230 } | 230 } |
231 } | 231 } |
232 | 232 |
233 } | 233 } |
OLD | NEW |