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

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

Issue 1452313004: Don't use cached subsequence when clip changes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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 598 matching lines...) Expand 10 before | Expand all | Expand 10 after
609 static LayoutRect transparencyClipBox(const PaintLayer*, const PaintLayer* r ootLayer, TransparencyClipBoxBehavior transparencyBehavior, 609 static LayoutRect transparencyClipBox(const PaintLayer*, const PaintLayer* r ootLayer, TransparencyClipBoxBehavior transparencyBehavior,
610 TransparencyClipBoxMode transparencyMode, const LayoutSize& subPixelAccu mulation, GlobalPaintFlags = GlobalPaintNormalPhase); 610 TransparencyClipBoxMode transparencyMode, const LayoutSize& subPixelAccu mulation, GlobalPaintFlags = GlobalPaintNormalPhase);
611 611
612 bool needsRepaint() const { return m_needsRepaint; } 612 bool needsRepaint() const { return m_needsRepaint; }
613 void setNeedsRepaint(); 613 void setNeedsRepaint();
614 void clearNeedsRepaintRecursively(); 614 void clearNeedsRepaintRecursively();
615 615
616 IntSize previousScrollOffsetAccumulationForPainting() const { return m_previ ousScrollOffsetAccumulationForPainting; } 616 IntSize previousScrollOffsetAccumulationForPainting() const { return m_previ ousScrollOffsetAccumulationForPainting; }
617 void setPreviousScrollOffsetAccumulationForPainting(const IntSize& s) { m_pr eviousScrollOffsetAccumulationForPainting = s; } 617 void setPreviousScrollOffsetAccumulationForPainting(const IntSize& s) { m_pr eviousScrollOffsetAccumulationForPainting = s; }
618 618
619 ClipRects* previousPaintingClipRects() const { return m_previousPaintingClip Rects.get(); }
620 void setPreviousPaintingClipRects(ClipRects* clipRects) { m_previousPainting ClipRects = clipRects; }
621
619 // For subsequence display items. 622 // For subsequence display items.
620 DisplayItemClient displayItemClient() const { return toDisplayItemClient(thi s); } 623 DisplayItemClient displayItemClient() const { return toDisplayItemClient(thi s); }
621 624
622 private: 625 private:
623 // Bounding box in the coordinates of this layer. 626 // Bounding box in the coordinates of this layer.
624 LayoutRect logicalBoundingBox() const; 627 LayoutRect logicalBoundingBox() const;
625 628
626 bool hasOverflowControls() const; 629 bool hasOverflowControls() const;
627 630
628 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus(); 631 void dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
799 802
800 CompositedLayerMapping* m_groupedMapping; 803 CompositedLayerMapping* m_groupedMapping;
801 804
802 PaintLayerClipper m_clipper; // FIXME: Lazily allocate? 805 PaintLayerClipper m_clipper; // FIXME: Lazily allocate?
803 OwnPtr<PaintLayerStackingNode> m_stackingNode; 806 OwnPtr<PaintLayerStackingNode> m_stackingNode;
804 OwnPtr<PaintLayerReflectionInfo> m_reflectionInfo; 807 OwnPtr<PaintLayerReflectionInfo> m_reflectionInfo;
805 808
806 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c omposited layer's composited bounds compared to absolute coordinates. 809 LayoutSize m_subpixelAccumulation; // The accumulated subpixel offset of a c omposited layer's composited bounds compared to absolute coordinates.
807 810
808 IntSize m_previousScrollOffsetAccumulationForPainting; 811 IntSize m_previousScrollOffsetAccumulationForPainting;
812 RefPtr<ClipRects> m_previousPaintingClipRects;
809 }; 813 };
810 814
811 } // namespace blink 815 } // namespace blink
812 816
813 #ifndef NDEBUG 817 #ifndef NDEBUG
814 // Outside the WebCore namespace for ease of invocation from gdb. 818 // Outside the WebCore namespace for ease of invocation from gdb.
815 void showLayerTree(const blink::PaintLayer*); 819 void showLayerTree(const blink::PaintLayer*);
816 void showLayerTree(const blink::LayoutObject*); 820 void showLayerTree(const blink::LayoutObject*);
817 #endif 821 #endif
818 822
819 #endif // Layer_h 823 #endif // Layer_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/ClipRects.h ('k') | third_party/WebKit/Source/core/paint/PaintLayerClipper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698