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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintLayer.h

Issue 2792833002: Revert of Optimize the pre-paint tree walk and ClipRects (Closed)
Patch Set: Created 3 years, 8 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
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 * 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 883 matching lines...) Expand 10 before | Expand all | Expand 10 after
894 // shouldCreateSubsequence() in PaintLayerPainter.cpp for the cases we use 894 // shouldCreateSubsequence() in PaintLayerPainter.cpp for the cases we use
895 // subsequence when painting a PaintLayer. 895 // subsequence when painting a PaintLayer.
896 896
897 IntSize previousScrollOffsetAccumulationForPainting() const { 897 IntSize previousScrollOffsetAccumulationForPainting() const {
898 return m_previousScrollOffsetAccumulationForPainting; 898 return m_previousScrollOffsetAccumulationForPainting;
899 } 899 }
900 void setPreviousScrollOffsetAccumulationForPainting(const IntSize& s) { 900 void setPreviousScrollOffsetAccumulationForPainting(const IntSize& s) {
901 m_previousScrollOffsetAccumulationForPainting = s; 901 m_previousScrollOffsetAccumulationForPainting = s;
902 } 902 }
903 903
904 bool hasPreviousPaintingClipRects() const { 904 ClipRects* previousPaintingClipRects() const {
905 return m_hasPreviousPaintingClipRects; 905 return m_previousPaintingClipRects.get();
906 } 906 }
907 907 void setPreviousPaintingClipRects(ClipRects& clipRects) {
908 const ClipRects& previousPaintingClipRects() const { 908 m_previousPaintingClipRects = &clipRects;
909 return m_previousPaintingClipRects;
910 }
911
912 void setPreviousPaintingClipRects(const ClipRects& clipRects) {
913 m_previousPaintingClipRects = clipRects;
914 m_hasPreviousPaintingClipRects = true;
915 } 909 }
916 910
917 LayoutRect previousPaintDirtyRect() const { return m_previousPaintDirtyRect; } 911 LayoutRect previousPaintDirtyRect() const { return m_previousPaintDirtyRect; }
918 void setPreviousPaintDirtyRect(const LayoutRect& rect) { 912 void setPreviousPaintDirtyRect(const LayoutRect& rect) {
919 m_previousPaintDirtyRect = rect; 913 m_previousPaintDirtyRect = rect;
920 } 914 }
921 915
922 PaintResult previousPaintResult() const { 916 PaintResult previousPaintResult() const {
923 return static_cast<PaintResult>(m_previousPaintResult); 917 return static_cast<PaintResult>(m_previousPaintResult);
924 } 918 }
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
1199 unsigned m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty : 1; 1193 unsigned m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty : 1;
1200 1194
1201 // These bitfields are part of ancestor/descendant dependent compositing 1195 // These bitfields are part of ancestor/descendant dependent compositing
1202 // inputs. 1196 // inputs.
1203 unsigned m_hasDescendantWithClipPath : 1; 1197 unsigned m_hasDescendantWithClipPath : 1;
1204 unsigned m_hasNonIsolatedDescendantWithBlendMode : 1; 1198 unsigned m_hasNonIsolatedDescendantWithBlendMode : 1;
1205 unsigned m_hasAncestorWithClipPath : 1; 1199 unsigned m_hasAncestorWithClipPath : 1;
1206 1200
1207 unsigned m_selfPaintingStatusChanged : 1; 1201 unsigned m_selfPaintingStatusChanged : 1;
1208 1202
1209 unsigned m_hasPreviousPaintingClipRects : 1;
1210
1211 LayoutBoxModelObject& m_layoutObject; 1203 LayoutBoxModelObject& m_layoutObject;
1212 1204
1213 PaintLayer* m_parent; 1205 PaintLayer* m_parent;
1214 PaintLayer* m_previous; 1206 PaintLayer* m_previous;
1215 PaintLayer* m_next; 1207 PaintLayer* m_next;
1216 PaintLayer* m_first; 1208 PaintLayer* m_first;
1217 PaintLayer* m_last; 1209 PaintLayer* m_last;
1218 1210
1219 // Our (x,y) coordinates are in our containing layer's coordinate space. 1211 // Our (x,y) coordinates are in our containing layer's coordinate space.
1220 LayoutPoint m_location; 1212 LayoutPoint m_location;
(...skipping 15 matching lines...) Expand all
1236 std::unique_ptr<AncestorDependentCompositingInputs> 1228 std::unique_ptr<AncestorDependentCompositingInputs>
1237 m_ancestorDependentCompositingInputs; 1229 m_ancestorDependentCompositingInputs;
1238 1230
1239 Persistent<PaintLayerScrollableArea> m_scrollableArea; 1231 Persistent<PaintLayerScrollableArea> m_scrollableArea;
1240 1232
1241 mutable std::unique_ptr<ClipRectsCache> m_clipRectsCache; 1233 mutable std::unique_ptr<ClipRectsCache> m_clipRectsCache;
1242 1234
1243 std::unique_ptr<PaintLayerStackingNode> m_stackingNode; 1235 std::unique_ptr<PaintLayerStackingNode> m_stackingNode;
1244 1236
1245 IntSize m_previousScrollOffsetAccumulationForPainting; 1237 IntSize m_previousScrollOffsetAccumulationForPainting;
1246 ClipRects m_previousPaintingClipRects; 1238 RefPtr<ClipRects> m_previousPaintingClipRects;
1247 LayoutRect m_previousPaintDirtyRect; 1239 LayoutRect m_previousPaintDirtyRect;
1248 1240
1249 std::unique_ptr<PaintLayerRareData> m_rareData; 1241 std::unique_ptr<PaintLayerRareData> m_rareData;
1250 1242
1251 FRIEND_TEST_ALL_PREFIXES(PaintLayerTest, 1243 FRIEND_TEST_ALL_PREFIXES(PaintLayerTest,
1252 DescendantDependentFlagsStopsAtThrottledFrames); 1244 DescendantDependentFlagsStopsAtThrottledFrames);
1253 FRIEND_TEST_ALL_PREFIXES(PaintLayerTest, 1245 FRIEND_TEST_ALL_PREFIXES(PaintLayerTest,
1254 PaintLayerTransformUpdatedOnStyleTransformAnimation); 1246 PaintLayerTransformUpdatedOnStyleTransformAnimation);
1255 }; 1247 };
1256 1248
1257 } // namespace blink 1249 } // namespace blink
1258 1250
1259 #ifndef NDEBUG 1251 #ifndef NDEBUG
1260 // Outside the WebCore namespace for ease of invocation from gdb. 1252 // Outside the WebCore namespace for ease of invocation from gdb.
1261 CORE_EXPORT void showLayerTree(const blink::PaintLayer*); 1253 CORE_EXPORT void showLayerTree(const blink::PaintLayer*);
1262 CORE_EXPORT void showLayerTree(const blink::LayoutObject*); 1254 CORE_EXPORT void showLayerTree(const blink::LayoutObject*);
1263 #endif 1255 #endif
1264 1256
1265 #endif // Layer_h 1257 #endif // Layer_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/paint/ClipRectsCache.h ('k') | third_party/WebKit/Source/core/paint/PaintLayer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698