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 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv
ed. |
7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) | 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo
bile.com/) |
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 1805 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1816 | 1816 |
1817 RefPtr<ComputedStyle> oldStyle = m_style.release(); | 1817 RefPtr<ComputedStyle> oldStyle = m_style.release(); |
1818 setStyleInternal(style); | 1818 setStyleInternal(style); |
1819 | 1819 |
1820 updateFillImages(oldStyle ? &oldStyle->backgroundLayers() : 0, m_style->back
groundLayers()); | 1820 updateFillImages(oldStyle ? &oldStyle->backgroundLayers() : 0, m_style->back
groundLayers()); |
1821 updateFillImages(oldStyle ? &oldStyle->maskLayers() : 0, m_style->maskLayers
()); | 1821 updateFillImages(oldStyle ? &oldStyle->maskLayers() : 0, m_style->maskLayers
()); |
1822 | 1822 |
1823 updateImage(oldStyle ? oldStyle->borderImage().image() : 0, m_style->borderI
mage().image()); | 1823 updateImage(oldStyle ? oldStyle->borderImage().image() : 0, m_style->borderI
mage().image()); |
1824 updateImage(oldStyle ? oldStyle->maskBoxImage().image() : 0, m_style->maskBo
xImage().image()); | 1824 updateImage(oldStyle ? oldStyle->maskBoxImage().image() : 0, m_style->maskBo
xImage().image()); |
1825 | 1825 |
| 1826 StyleImage* newContentImage = m_style->contentData() && m_style->contentData
()->isImage() ? |
| 1827 toImageContentData(m_style->contentData())->image() : nullptr; |
| 1828 StyleImage* oldContentImage = oldStyle && oldStyle->contentData() && oldStyl
e->contentData()->isImage() ? |
| 1829 toImageContentData(oldStyle->contentData())->image() : nullptr; |
| 1830 updateImage(oldContentImage, newContentImage); |
| 1831 |
| 1832 StyleImage* newBoxReflectMaskImage = m_style->boxReflect() ? m_style->boxRef
lect()->mask().image() : nullptr; |
| 1833 StyleImage* oldBoxReflectMaskImage = oldStyle && oldStyle->boxReflect() ? ol
dStyle->boxReflect()->mask().image() : nullptr; |
| 1834 updateImage(oldBoxReflectMaskImage, newBoxReflectMaskImage); |
| 1835 |
1826 updateShapeImage(oldStyle ? oldStyle->shapeOutside() : 0, m_style->shapeOuts
ide()); | 1836 updateShapeImage(oldStyle ? oldStyle->shapeOutside() : 0, m_style->shapeOuts
ide()); |
1827 | 1837 |
1828 bool doesNotNeedLayoutOrPaintInvalidation = !m_parent; | 1838 bool doesNotNeedLayoutOrPaintInvalidation = !m_parent; |
1829 | 1839 |
1830 styleDidChange(diff, oldStyle.get()); | 1840 styleDidChange(diff, oldStyle.get()); |
1831 | 1841 |
1832 // FIXME: |this| might be destroyed here. This can currently happen for a La
youtTextFragment when | 1842 // FIXME: |this| might be destroyed here. This can currently happen for a La
youtTextFragment when |
1833 // its first-letter block gets an update in LayoutTextFragment::styleDidChan
ge. For LayoutTextFragment(s), | 1843 // its first-letter block gets an update in LayoutTextFragment::styleDidChan
ge. For LayoutTextFragment(s), |
1834 // we will safely bail out with the doesNotNeedLayoutOrPaintInvalidation fla
g. We might want to broaden | 1844 // we will safely bail out with the doesNotNeedLayoutOrPaintInvalidation fla
g. We might want to broaden |
1835 // this condition in the future as we move layoutObject changes out of layou
t and into style changes. | 1845 // this condition in the future as we move layoutObject changes out of layou
t and into style changes. |
(...skipping 616 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2452 if (StyleImage* maskImage = maskLayer->image()) | 2462 if (StyleImage* maskImage = maskLayer->image()) |
2453 maskImage->removeClient(this); | 2463 maskImage->removeClient(this); |
2454 } | 2464 } |
2455 | 2465 |
2456 if (StyleImage* borderImage = m_style->borderImage().image()) | 2466 if (StyleImage* borderImage = m_style->borderImage().image()) |
2457 borderImage->removeClient(this); | 2467 borderImage->removeClient(this); |
2458 | 2468 |
2459 if (StyleImage* maskBoxImage = m_style->maskBoxImage().image()) | 2469 if (StyleImage* maskBoxImage = m_style->maskBoxImage().image()) |
2460 maskBoxImage->removeClient(this); | 2470 maskBoxImage->removeClient(this); |
2461 | 2471 |
| 2472 if (m_style->contentData() && m_style->contentData()->isImage()) |
| 2473 toImageContentData(m_style->contentData())->image()->removeClient(th
is); |
| 2474 |
| 2475 if (m_style->boxReflect() && m_style->boxReflect()->mask().image()) |
| 2476 m_style->boxReflect()->mask().image()->removeClient(this); |
| 2477 |
2462 removeShapeImageClient(m_style->shapeOutside()); | 2478 removeShapeImageClient(m_style->shapeOutside()); |
2463 } | 2479 } |
2464 ResourceLoadPriorityOptimizer::resourceLoadPriorityOptimizer()->removeLayout
Object(this); | 2480 ResourceLoadPriorityOptimizer::resourceLoadPriorityOptimizer()->removeLayout
Object(this); |
2465 | 2481 |
2466 if (frameView()) | 2482 if (frameView()) |
2467 setIsSlowRepaintObject(false); | 2483 setIsSlowRepaintObject(false); |
2468 } | 2484 } |
2469 | 2485 |
2470 void LayoutObject::insertedIntoTree() | 2486 void LayoutObject::insertedIntoTree() |
2471 { | 2487 { |
(...skipping 919 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3391 const blink::LayoutObject* root = object1; | 3407 const blink::LayoutObject* root = object1; |
3392 while (root->parent()) | 3408 while (root->parent()) |
3393 root = root->parent(); | 3409 root = root->parent(); |
3394 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); | 3410 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); |
3395 } else { | 3411 } else { |
3396 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); | 3412 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); |
3397 } | 3413 } |
3398 } | 3414 } |
3399 | 3415 |
3400 #endif | 3416 #endif |
OLD | NEW |