| 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 1778 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1789 } | 1789 } |
| 1790 | 1790 |
| 1791 // Optimization: for decoration/color property changes, invalidation is only
needed if we have style or text affected by these properties. | 1791 // Optimization: for decoration/color property changes, invalidation is only
needed if we have style or text affected by these properties. |
| 1792 if (diff.textDecorationOrColorChanged() && !diff.needsPaintInvalidation()) { | 1792 if (diff.textDecorationOrColorChanged() && !diff.needsPaintInvalidation()) { |
| 1793 if (style()->hasBorder() || style()->hasOutline() | 1793 if (style()->hasBorder() || style()->hasOutline() |
| 1794 || style()->isBackgroundColorCurrentColor() | 1794 || style()->isBackgroundColorCurrentColor() |
| 1795 // Skip any text nodes that do not contain text boxes. Whitespace ca
nnot be | 1795 // Skip any text nodes that do not contain text boxes. Whitespace ca
nnot be |
| 1796 // skipped or we will miss invalidating decorations (e.g., underline
s). | 1796 // skipped or we will miss invalidating decorations (e.g., underline
s). |
| 1797 || (isText() && !isBR() && toLayoutText(this)->hasTextBoxes()) | 1797 || (isText() && !isBR() && toLayoutText(this)->hasTextBoxes()) |
| 1798 // Caret is painted in text color. | 1798 // Caret is painted in text color. |
| 1799 || (isLayoutBlock() && toLayoutBlock(this)->hasCaret())) | 1799 || (isLayoutBlock() && toLayoutBlock(this)->hasCaret()) |
| 1800 || (isSVG() && style()->svgStyle().isFillColorCurrentColor()) |
| 1801 || (isSVG() && style()->svgStyle().isStrokeColorCurrentColor())) |
| 1800 diff.setNeedsPaintInvalidationObject(); | 1802 diff.setNeedsPaintInvalidationObject(); |
| 1801 } | 1803 } |
| 1802 | 1804 |
| 1803 // The answer to layerTypeRequired() for plugins, iframes, and canvas can ch
ange without the actual | 1805 // The answer to layerTypeRequired() for plugins, iframes, and canvas can ch
ange without the actual |
| 1804 // style changing, since it depends on whether we decide to composite these
elements. When the | 1806 // style changing, since it depends on whether we decide to composite these
elements. When the |
| 1805 // layer status of one of these elements changes, we need to force a layout. | 1807 // layer status of one of these elements changes, we need to force a layout. |
| 1806 if (!diff.needsFullLayout() && style() && isBoxModelObject()) { | 1808 if (!diff.needsFullLayout() && style() && isBoxModelObject()) { |
| 1807 bool requiresLayer = toLayoutBoxModelObject(this)->layerTypeRequired() !
= NoPaintLayer; | 1809 bool requiresLayer = toLayoutBoxModelObject(this)->layerTypeRequired() !
= NoPaintLayer; |
| 1808 if (hasLayer() != requiresLayer) | 1810 if (hasLayer() != requiresLayer) |
| 1809 diff.setNeedsFullLayout(); | 1811 diff.setNeedsFullLayout(); |
| (...skipping 1708 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3518 const blink::LayoutObject* root = object1; | 3520 const blink::LayoutObject* root = object1; |
| 3519 while (root->parent()) | 3521 while (root->parent()) |
| 3520 root = root->parent(); | 3522 root = root->parent(); |
| 3521 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); | 3523 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); |
| 3522 } else { | 3524 } else { |
| 3523 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); | 3525 fprintf(stderr, "Cannot showLayoutTree. Root is (nil)\n"); |
| 3524 } | 3526 } |
| 3525 } | 3527 } |
| 3526 | 3528 |
| 3527 #endif | 3529 #endif |
| OLD | NEW |