OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 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) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. |
7 * All rights reserved. | 7 * All rights reserved. |
8 * Copyright (C) 2009 Google Inc. All rights reserved. | 8 * Copyright (C) 2009 Google Inc. All rights reserved. |
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 1725 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1736 | 1736 |
1737 // Paint properties (see: |ObjectPaintProperties|) are built from an object's | 1737 // Paint properties (see: |ObjectPaintProperties|) are built from an object's |
1738 // state (location, transform, etc) as well as properties from ancestors. | 1738 // state (location, transform, etc) as well as properties from ancestors. |
1739 // When these inputs change, setNeedsPaintPropertyUpdate will cause a property | 1739 // When these inputs change, setNeedsPaintPropertyUpdate will cause a property |
1740 // tree update during the next document lifecycle update. | 1740 // tree update during the next document lifecycle update. |
1741 // TODO(pdr): Add additional granularity such as the ability to signal that | 1741 // TODO(pdr): Add additional granularity such as the ability to signal that |
1742 // only a local paint property update is needed. | 1742 // only a local paint property update is needed. |
1743 void setNeedsPaintPropertyUpdate() { | 1743 void setNeedsPaintPropertyUpdate() { |
1744 m_bitfields.setNeedsPaintPropertyUpdate(true); | 1744 m_bitfields.setNeedsPaintPropertyUpdate(true); |
1745 } | 1745 } |
| 1746 void setAllAncestorsNeedPaintPropertyUpdate() { |
| 1747 if (m_parent && !m_parent->needsPaintPropertyUpdate()) { |
| 1748 m_parent->setNeedsPaintPropertyUpdate(); |
| 1749 m_parent->setAllAncestorsNeedPaintPropertyUpdate(); |
| 1750 } |
| 1751 } |
1746 void clearNeedsPaintPropertyUpdate() { | 1752 void clearNeedsPaintPropertyUpdate() { |
1747 DCHECK_EQ(document().lifecycle().state(), DocumentLifecycle::InPrePaint); | 1753 DCHECK_EQ(document().lifecycle().state(), DocumentLifecycle::InPrePaint); |
1748 m_bitfields.setNeedsPaintPropertyUpdate(false); | 1754 m_bitfields.setNeedsPaintPropertyUpdate(false); |
1749 } | 1755 } |
1750 bool needsPaintPropertyUpdate() const { | 1756 bool needsPaintPropertyUpdate() const { |
1751 return m_bitfields.needsPaintPropertyUpdate(); | 1757 return m_bitfields.needsPaintPropertyUpdate(); |
1752 } | 1758 } |
1753 | 1759 |
1754 void setIsScrollAnchorObject() { m_bitfields.setIsScrollAnchorObject(true); } | 1760 void setIsScrollAnchorObject() { m_bitfields.setIsScrollAnchorObject(true); } |
1755 // Clears the IsScrollAnchorObject bit if and only if no ScrollAnchors still | 1761 // Clears the IsScrollAnchorObject bit if and only if no ScrollAnchors still |
(...skipping 886 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2642 CORE_EXPORT void showLineTree(const blink::LayoutObject*); | 2648 CORE_EXPORT void showLineTree(const blink::LayoutObject*); |
2643 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); | 2649 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); |
2644 // We don't make object2 an optional parameter so that showLayoutTree | 2650 // We don't make object2 an optional parameter so that showLayoutTree |
2645 // can be called from gdb easily. | 2651 // can be called from gdb easily. |
2646 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, | 2652 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, |
2647 const blink::LayoutObject* object2); | 2653 const blink::LayoutObject* object2); |
2648 | 2654 |
2649 #endif | 2655 #endif |
2650 | 2656 |
2651 #endif // LayoutObject_h | 2657 #endif // LayoutObject_h |
OLD | NEW |