Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: Source/core/rendering/RenderLayer.h

Issue 13427009: Replace the current contiguity check for composited scrolling (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: one more test update... Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 * 3 *
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
5 * 5 *
6 * Other contributors: 6 * Other contributors:
7 * Robert O'Callahan <roc+@cs.cmu.edu> 7 * Robert O'Callahan <roc+@cs.cmu.edu>
8 * David Baron <dbaron@fas.harvard.edu> 8 * David Baron <dbaron@fas.harvard.edu>
9 * Christian Biesinger <cbiesinger@web.de> 9 * Christian Biesinger <cbiesinger@web.de>
10 * Randall Jesup <rjesup@wgate.com> 10 * Randall Jesup <rjesup@wgate.com>
(...skipping 881 matching lines...) Expand 10 before | Expand all | Expand 10 after
892 892
893 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); } 893 bool isDirtyStackingContainer() const { return m_zOrderListsDirty && isStack ingContainer(); }
894 894
895 void setAncestorChainHasSelfPaintingLayerDescendant(); 895 void setAncestorChainHasSelfPaintingLayerDescendant();
896 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); 896 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
897 897
898 void setAncestorChainHasOutOfFlowPositionedDescendant(); 898 void setAncestorChainHasOutOfFlowPositionedDescendant();
899 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus(); 899 void dirtyAncestorChainHasOutOfFlowPositionedDescendantStatus();
900 900
901 bool acceleratedCompositingForOverflowScrollEnabled() const; 901 bool acceleratedCompositingForOverflowScrollEnabled() const;
902 void updateDescendantsAreContiguousInStackingOrder(); 902 void updateCanBeStackingContainer();
903 void updateDescendantsAreContiguousInStackingOrderRecursive(const HashMap<co nst RenderLayer*, int>&, int& minIndex, int& maxIndex, int& count, bool firstIte ration);
904 void collectBeforePromotionZOrderList(RenderLayer* ancestorStackingContext, OwnPtr<Vector<RenderLayer*> >& posZOrderListBeforePromote, OwnPtr<Vector<RenderL ayer*> >& negZOrderListBeforePromote); 903 void collectBeforePromotionZOrderList(RenderLayer* ancestorStackingContext, OwnPtr<Vector<RenderLayer*> >& posZOrderListBeforePromote, OwnPtr<Vector<RenderL ayer*> >& negZOrderListBeforePromote);
905 void collectAfterPromotionZOrderList(RenderLayer* ancestorStackingContext, O wnPtr<Vector<RenderLayer*> >& posZOrderListAfterPromote, OwnPtr<Vector<RenderLay er*> >& negZOrderListAfterPromote); 904 void collectAfterPromotionZOrderList(RenderLayer* ancestorStackingContext, O wnPtr<Vector<RenderLayer*> >& posZOrderListAfterPromote, OwnPtr<Vector<RenderLay er*> >& negZOrderListAfterPromote);
906 905
907 void computeRepaintRects(const RenderLayerModelObject* repaintContainer, con st RenderGeometryMap* = 0); 906 void computeRepaintRects(const RenderLayerModelObject* repaintContainer, con st RenderGeometryMap* = 0);
908 void computeRepaintRectsIncludingDescendants(); 907 void computeRepaintRectsIncludingDescendants();
909 void clearRepaintRects(); 908 void clearRepaintRects();
910 909
911 void clipToRect(RenderLayer* rootLayer, GraphicsContext*, const LayoutRect& paintDirtyRect, const ClipRect&, 910 void clipToRect(RenderLayer* rootLayer, GraphicsContext*, const LayoutRect& paintDirtyRect, const ClipRect&,
912 BorderRadiusClippingRule = IncludeSelfForBorderRadius); 911 BorderRadiusClippingRule = IncludeSelfForBorderRadius);
913 void restoreClip(GraphicsContext*, const LayoutRect& paintDirtyRect, const C lipRect&); 912 void restoreClip(GraphicsContext*, const LayoutRect& paintDirtyRect, const C lipRect&);
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
1185 // containing block is our ancestor. If this is the case, the descendant 1184 // containing block is our ancestor. If this is the case, the descendant
1186 // may fall outside of our clip preventing things like opting into 1185 // may fall outside of our clip preventing things like opting into
1187 // composited scrolling (which causes clipping of all descendants). 1186 // composited scrolling (which causes clipping of all descendants).
1188 bool m_hasUnclippedDescendant : 1; 1187 bool m_hasUnclippedDescendant : 1;
1189 1188
1190 bool m_needsCompositedScrolling : 1; 1189 bool m_needsCompositedScrolling : 1;
1191 1190
1192 // If this is true, then no non-descendant appears between any of our 1191 // If this is true, then no non-descendant appears between any of our
1193 // descendants in stacking order. This is one of the requirements of being 1192 // descendants in stacking order. This is one of the requirements of being
1194 // able to safely become a stacking context. 1193 // able to safely become a stacking context.
1195 bool m_descendantsAreContiguousInStackingOrder : 1; 1194 bool m_canBePromotedToStackingContainer : 1;
1196 bool m_descendantsAreContiguousInStackingOrderDirty : 1; 1195 bool m_canBePromotedToStackingContainerDirty : 1;
1197 1196
1198 const bool m_isRootLayer : 1; 1197 const bool m_isRootLayer : 1;
1199 1198
1200 bool m_usedTransparency : 1; // Tracks whether we need to close a transparen t layer, i.e., whether 1199 bool m_usedTransparency : 1; // Tracks whether we need to close a transparen t layer, i.e., whether
1201 // we ended up painting this layer or any desce ndants (and therefore need to 1200 // we ended up painting this layer or any desce ndants (and therefore need to
1202 // blend). 1201 // blend).
1203 bool m_paintingInsideReflection : 1; // A state bit tracking if we are pain ting inside a replica. 1202 bool m_paintingInsideReflection : 1; // A state bit tracking if we are pain ting inside a replica.
1204 bool m_inOverflowRelayout : 1; 1203 bool m_inOverflowRelayout : 1;
1205 unsigned m_repaintStatus : 2; // RepaintStatus 1204 unsigned m_repaintStatus : 2; // RepaintStatus
1206 1205
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after
1368 1367
1369 } // namespace WebCore 1368 } // namespace WebCore
1370 1369
1371 #ifndef NDEBUG 1370 #ifndef NDEBUG
1372 // Outside the WebCore namespace for ease of invocation from gdb. 1371 // Outside the WebCore namespace for ease of invocation from gdb.
1373 void showLayerTree(const WebCore::RenderLayer*); 1372 void showLayerTree(const WebCore::RenderLayer*);
1374 void showLayerTree(const WebCore::RenderObject*); 1373 void showLayerTree(const WebCore::RenderObject*);
1375 #endif 1374 #endif
1376 1375
1377 #endif // RenderLayer_h 1376 #endif // RenderLayer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698