| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Antti Koivisto (koivisto@kde.org) | 2 * Copyright (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 309 for (FillLayer* p = this; p; p = next) { | 309 for (FillLayer* p = this; p; p = next) { |
| 310 next = p->m_next; | 310 next = p->m_next; |
| 311 if (next && !next->isImageSet()) { | 311 if (next && !next->isImageSet()) { |
| 312 delete next; | 312 delete next; |
| 313 p->m_next = 0; | 313 p->m_next = 0; |
| 314 break; | 314 break; |
| 315 } | 315 } |
| 316 } | 316 } |
| 317 } | 317 } |
| 318 | 318 |
| 319 static EFillBox clipMax(EFillBox clipA, EFillBox clipB) | |
| 320 { | |
| 321 if (clipA == BorderFillBox || clipB == BorderFillBox) | |
| 322 return BorderFillBox; | |
| 323 if (clipA == PaddingFillBox || clipB == PaddingFillBox) | |
| 324 return PaddingFillBox; | |
| 325 if (clipA == ContentFillBox || clipB == ContentFillBox) | |
| 326 return ContentFillBox; | |
| 327 return TextFillBox; | |
| 328 } | |
| 329 | |
| 330 void FillLayer::computeCachedPropertiesIfNeeded() const | 319 void FillLayer::computeCachedPropertiesIfNeeded() const |
| 331 { | 320 { |
| 332 if (m_cachedPropertiesComputed) | 321 if (m_cachedPropertiesComputed) |
| 333 return; | 322 return; |
| 334 m_thisOrNextLayersClipMax = clip(); | 323 m_thisOrNextLayersClipMax = clip(); |
| 335 m_thisOrNextLayersUseContentBox = clip() == ContentFillBox || origin() == Co
ntentFillBox; | 324 m_thisOrNextLayersUseContentBox = clip() == ContentFillBox || origin() == Co
ntentFillBox; |
| 336 m_thisOrNextLayersHaveLocalAttachment = attachment() == LocalBackgroundAttac
hment; | 325 m_thisOrNextLayersHaveLocalAttachment = attachment() == LocalBackgroundAttac
hment; |
| 337 m_cachedPropertiesComputed = true; | 326 m_cachedPropertiesComputed = true; |
| 338 | 327 |
| 339 if (m_next) { | 328 if (m_next) { |
| 340 m_next->computeCachedPropertiesIfNeeded(); | 329 m_next->computeCachedPropertiesIfNeeded(); |
| 341 m_thisOrNextLayersClipMax = clipMax(thisOrNextLayersClipMax(), m_next->t
hisOrNextLayersClipMax()); | 330 m_thisOrNextLayersClipMax = enclosingFillBox(thisOrNextLayersClipMax(),
m_next->thisOrNextLayersClipMax()); |
| 342 m_thisOrNextLayersUseContentBox |= m_next->m_thisOrNextLayersUseContentB
ox; | 331 m_thisOrNextLayersUseContentBox |= m_next->m_thisOrNextLayersUseContentB
ox; |
| 343 m_thisOrNextLayersHaveLocalAttachment |= m_next->m_thisOrNextLayersHaveL
ocalAttachment; | 332 m_thisOrNextLayersHaveLocalAttachment |= m_next->m_thisOrNextLayersHaveL
ocalAttachment; |
| 344 } | 333 } |
| 345 } | 334 } |
| 346 | 335 |
| 347 bool FillLayer::clipOccludesNextLayers() const | 336 bool FillLayer::clipOccludesNextLayers() const |
| 348 { | 337 { |
| 349 return clip() == thisOrNextLayersClipMax(); | 338 return clip() == thisOrNextLayersClipMax(); |
| 350 } | 339 } |
| 351 | 340 |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 419 { | 408 { |
| 420 for (; layer1 && layer2; layer1 = layer1->next(), layer2 = layer2->next()) { | 409 for (; layer1 && layer2; layer1 = layer1->next(), layer2 = layer2->next()) { |
| 421 if (!layerImagesIdentical(*layer1, *layer2)) | 410 if (!layerImagesIdentical(*layer1, *layer2)) |
| 422 return false; | 411 return false; |
| 423 } | 412 } |
| 424 | 413 |
| 425 return !layer1 && !layer2; | 414 return !layer1 && !layer2; |
| 426 } | 415 } |
| 427 | 416 |
| 428 } // namespace blink | 417 } // namespace blink |
| OLD | NEW |