| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. | 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. | 3 * Copyright (C) 2013 Intel Corporation. All rights reserved. |
| 4 * | 4 * |
| 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
| 6 * | 6 * |
| 7 * Other contributors: | 7 * Other contributors: |
| 8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
| 9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
| 10 * Christian Biesinger <cbiesinger@web.de> | 10 * Christian Biesinger <cbiesinger@web.de> |
| (...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 205 // FIXME: We should ASSERT(!m_hasSelfPaintingLayerDescendantDirty); here but
we hit the same bugs as visible content above. | 205 // FIXME: We should ASSERT(!m_hasSelfPaintingLayerDescendantDirty); here but
we hit the same bugs as visible content above. |
| 206 // Part of the issue is with subtree relayout: we don't check if our ancesto
rs have some descendant flags dirty, missing some updates. | 206 // Part of the issue is with subtree relayout: we don't check if our ancesto
rs have some descendant flags dirty, missing some updates. |
| 207 bool hasSelfPaintingLayerDescendant() const { return m_hasSelfPaintingLayerD
escendant; } | 207 bool hasSelfPaintingLayerDescendant() const { return m_hasSelfPaintingLayerD
escendant; } |
| 208 | 208 |
| 209 // FIXME: We should ASSERT(!m_hasOutOfFlowPositionedDescendantDirty) here. S
ee above. | 209 // FIXME: We should ASSERT(!m_hasOutOfFlowPositionedDescendantDirty) here. S
ee above. |
| 210 bool hasOutOfFlowPositionedDescendant() const { return m_hasOutOfFlowPositio
nedDescendant; } | 210 bool hasOutOfFlowPositionedDescendant() const { return m_hasOutOfFlowPositio
nedDescendant; } |
| 211 | 211 |
| 212 void setHasOutOfFlowPositionedDescendant(bool hasDescendant) { m_hasOutOfFlo
wPositionedDescendant = hasDescendant; } | 212 void setHasOutOfFlowPositionedDescendant(bool hasDescendant) { m_hasOutOfFlo
wPositionedDescendant = hasDescendant; } |
| 213 void setHasOutOfFlowPositionedDescendantDirty(bool dirty) { m_hasOutOfFlowPo
sitionedDescendantDirty = dirty; } | 213 void setHasOutOfFlowPositionedDescendantDirty(bool dirty) { m_hasOutOfFlowPo
sitionedDescendantDirty = dirty; } |
| 214 | 214 |
| 215 | 215 void updateIsUnclippedDescendant(); |
| 216 bool hasUnclippedDescendant() const { return m_hasUnclippedDescendant; } | |
| 217 void setHasUnclippedDescendant(bool hasDescendant) { m_hasUnclippedDescendan
t = hasDescendant; } | |
| 218 void updateHasUnclippedDescendant(); | |
| 219 bool isUnclippedDescendant() const { return m_isUnclippedDescendant; } | 216 bool isUnclippedDescendant() const { return m_isUnclippedDescendant; } |
| 220 | 217 |
| 221 // Will ensure that hasUnclippedDescendant and hasNonCompositiedChild are up
to date. | 218 // Will ensure that hasNonCompositiedChild are up to date. |
| 222 void updateScrollingStateAfterCompositingChange(); | 219 void updateScrollingStateAfterCompositingChange(); |
| 223 bool hasVisibleNonLayerContent() const { return m_hasVisibleNonLayerContent;
} | 220 bool hasVisibleNonLayerContent() const { return m_hasVisibleNonLayerContent;
} |
| 224 bool hasNonCompositedChild() const { ASSERT(isAllowedToQueryCompositingState
()); return m_hasNonCompositedChild; } | 221 bool hasNonCompositedChild() const { ASSERT(isAllowedToQueryCompositingState
()); return m_hasNonCompositedChild; } |
| 225 | 222 |
| 226 bool usedTransparency() const { return m_usedTransparency; } | 223 bool usedTransparency() const { return m_usedTransparency; } |
| 227 | 224 |
| 228 // Gets the nearest enclosing positioned ancestor layer (also includes | 225 // Gets the nearest enclosing positioned ancestor layer (also includes |
| 229 // the <html> layer and the root layer). | 226 // the <html> layer and the root layer). |
| 230 RenderLayer* enclosingPositionedAncestor() const; | 227 RenderLayer* enclosingPositionedAncestor() const; |
| 231 | 228 |
| (...skipping 404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 636 unsigned m_isSelfPaintingLayer : 1; | 633 unsigned m_isSelfPaintingLayer : 1; |
| 637 | 634 |
| 638 // If have no self-painting descendants, we don't have to walk our children
during painting. This can lead to | 635 // If have no self-painting descendants, we don't have to walk our children
during painting. This can lead to |
| 639 // significant savings, especially if the tree has lots of non-self-painting
layers grouped together (e.g. table cells). | 636 // significant savings, especially if the tree has lots of non-self-painting
layers grouped together (e.g. table cells). |
| 640 unsigned m_hasSelfPaintingLayerDescendant : 1; | 637 unsigned m_hasSelfPaintingLayerDescendant : 1; |
| 641 unsigned m_hasSelfPaintingLayerDescendantDirty : 1; | 638 unsigned m_hasSelfPaintingLayerDescendantDirty : 1; |
| 642 | 639 |
| 643 unsigned m_hasOutOfFlowPositionedDescendant : 1; | 640 unsigned m_hasOutOfFlowPositionedDescendant : 1; |
| 644 unsigned m_hasOutOfFlowPositionedDescendantDirty : 1; | 641 unsigned m_hasOutOfFlowPositionedDescendantDirty : 1; |
| 645 | 642 |
| 646 // This is true if we have an out-of-flow positioned descendant whose | |
| 647 // containing block is our ancestor. If this is the case, the descendant | |
| 648 // may fall outside of our clip preventing things like opting into | |
| 649 // composited scrolling (which causes clipping of all descendants). | |
| 650 unsigned m_hasUnclippedDescendant : 1; | |
| 651 | |
| 652 unsigned m_isUnclippedDescendant : 1; | 643 unsigned m_isUnclippedDescendant : 1; |
| 653 | 644 |
| 654 const unsigned m_isRootLayer : 1; | 645 const unsigned m_isRootLayer : 1; |
| 655 | 646 |
| 656 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp
arent layer, i.e., whether | 647 unsigned m_usedTransparency : 1; // Tracks whether we need to close a transp
arent layer, i.e., whether |
| 657 // we ended up painting this layer or any desce
ndants (and therefore need to | 648 // we ended up painting this layer or any desce
ndants (and therefore need to |
| 658 // blend). | 649 // blend). |
| 659 | 650 |
| 660 unsigned m_visibleContentStatusDirty : 1; | 651 unsigned m_visibleContentStatusDirty : 1; |
| 661 unsigned m_hasVisibleContent : 1; | 652 unsigned m_hasVisibleContent : 1; |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 755 | 746 |
| 756 } // namespace WebCore | 747 } // namespace WebCore |
| 757 | 748 |
| 758 #ifndef NDEBUG | 749 #ifndef NDEBUG |
| 759 // Outside the WebCore namespace for ease of invocation from gdb. | 750 // Outside the WebCore namespace for ease of invocation from gdb. |
| 760 void showLayerTree(const WebCore::RenderLayer*); | 751 void showLayerTree(const WebCore::RenderLayer*); |
| 761 void showLayerTree(const WebCore::RenderObject*); | 752 void showLayerTree(const WebCore::RenderObject*); |
| 762 #endif | 753 #endif |
| 763 | 754 |
| 764 #endif // RenderLayer_h | 755 #endif // RenderLayer_h |
| OLD | NEW |