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

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

Issue 2343173002: Let clients of FilterEffectBuilder compute/provide the reference-box (Closed)
Patch Set: Created 4 years, 3 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 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
366 NeverIncludeTransformForAncestorLayer, 366 NeverIncludeTransformForAncestorLayer,
367 IncludeTransformsAndCompositedChildLayers, 367 IncludeTransformsAndCompositedChildLayers,
368 }; 368 };
369 369
370 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know n. 370 // Bounding box relative to some ancestor layer. Pass offsetFromRoot if know n.
371 LayoutRect physicalBoundingBox(const LayoutPoint& offsetFromRoot) const; 371 LayoutRect physicalBoundingBox(const LayoutPoint& offsetFromRoot) const;
372 LayoutRect physicalBoundingBox(const PaintLayer* ancestorLayer) const; 372 LayoutRect physicalBoundingBox(const PaintLayer* ancestorLayer) const;
373 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const L ayoutPoint& offsetFromRoot, CalculateBoundsOptions = MaybeIncludeTransformForAnc estorLayer) const; 373 LayoutRect physicalBoundingBoxIncludingReflectionAndStackingChildren(const L ayoutPoint& offsetFromRoot, CalculateBoundsOptions = MaybeIncludeTransformForAnc estorLayer) const;
374 LayoutRect fragmentsBoundingBox(const PaintLayer* ancestorLayer) const; 374 LayoutRect fragmentsBoundingBox(const PaintLayer* ancestorLayer) const;
375 375
376 FloatRect boxForFilter() const;
376 LayoutRect boxForClipPath() const; 377 LayoutRect boxForClipPath() const;
377 378
378 LayoutRect boundingBoxForCompositingOverlapTest() const; 379 LayoutRect boundingBoxForCompositingOverlapTest() const;
379 380
380 // If true, this layer's children are included in its bounds for overlap tes ting. 381 // If true, this layer's children are included in its bounds for overlap tes ting.
381 // We can't rely on the children's positions if this layer has a filter that could have moved the children's pixels around. 382 // We can't rely on the children's positions if this layer has a filter that could have moved the children's pixels around.
382 bool overlapBoundsIncludeChildren() const; 383 bool overlapBoundsIncludeChildren() const;
383 LayoutRect boundingBoxForCompositing(const PaintLayer* ancestorLayer = 0, Ca lculateBoundsOptions = MaybeIncludeTransformForAncestorLayer) const; 384 LayoutRect boundingBoxForCompositing(const PaintLayer* ancestorLayer = 0, Ca lculateBoundsOptions = MaybeIncludeTransformForAncestorLayer) const;
384 385
385 LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; } 386 LayoutUnit staticInlinePosition() const { return m_staticInlinePosition; }
(...skipping 395 matching lines...) Expand 10 before | Expand all | Expand 10 after
781 bool hitTestClippedOutByClipPath(PaintLayer* rootLayer, const HitTestLocatio n&) const; 782 bool hitTestClippedOutByClipPath(PaintLayer* rootLayer, const HitTestLocatio n&) const;
782 783
783 bool childBackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const; 784 bool childBackgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const;
784 785
785 bool shouldBeSelfPaintingLayer() const; 786 bool shouldBeSelfPaintingLayer() const;
786 787
787 // FIXME: We should only create the stacking node if needed. 788 // FIXME: We should only create the stacking node if needed.
788 bool requiresStackingNode() const { return true; } 789 bool requiresStackingNode() const { return true; }
789 void updateStackingNode(); 790 void updateStackingNode();
790 791
791 FilterOperations computeFilterOperations(const ComputedStyle&) const; 792 FilterOperations addReflectionToFilterOperations(const ComputedStyle&) const ;
792 void updateReflectionInfo(const ComputedStyle*); 793 void updateReflectionInfo(const ComputedStyle*);
793 FilterEffectBuilder* updateFilterEffectBuilder() const; 794 FilterEffectBuilder* updateFilterEffectBuilder() const;
794 795
795 // FIXME: We could lazily allocate our ScrollableArea based on style propert ies ('overflow', ...) 796 // FIXME: We could lazily allocate our ScrollableArea based on style propert ies ('overflow', ...)
796 // but for now, we are always allocating it for LayoutBox as it's safer. crb ug.com/467721. 797 // but for now, we are always allocating it for LayoutBox as it's safer. crb ug.com/467721.
797 bool requiresScrollableArea() const { return layoutBox(); } 798 bool requiresScrollableArea() const { return layoutBox(); }
798 void updateScrollableArea(); 799 void updateScrollableArea();
799 800
800 void dirtyAncestorChainVisibleDescendantStatus(); 801 void dirtyAncestorChainVisibleDescendantStatus();
801 802
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
934 935
935 } // namespace blink 936 } // namespace blink
936 937
937 #ifndef NDEBUG 938 #ifndef NDEBUG
938 // Outside the WebCore namespace for ease of invocation from gdb. 939 // Outside the WebCore namespace for ease of invocation from gdb.
939 void showLayerTree(const blink::PaintLayer*); 940 void showLayerTree(const blink::PaintLayer*);
940 void showLayerTree(const blink::LayoutObject*); 941 void showLayerTree(const blink::LayoutObject*);
941 #endif 942 #endif
942 943
943 #endif // Layer_h 944 #endif // Layer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698