| Index: third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h
|
| diff --git a/third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h b/third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h
|
| index f14c584aa31397567cd77ccd7e207ade1b8638d8..bc4e69d3906b8c36fcceebe70f2d8b87a40a3986 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h
|
| +++ b/third_party/WebKit/Source/platform/graphics/filters/FilterEffect.h
|
| @@ -68,26 +68,13 @@ public:
|
| // Clipped primitive subregion in the coordinate space of the target.
|
| FloatRect absoluteBounds() const;
|
|
|
| + // Mapping a rect forwards to determine which which destination pixels a
|
| + // given source rect would affect.
|
| + FloatRect mapRect(const FloatRect&) const;
|
| +
|
| virtual sk_sp<SkImageFilter> createImageFilter();
|
| virtual sk_sp<SkImageFilter> createImageFilterWithoutValidation();
|
|
|
| - // Mapping a rect forwards determines which which destination pixels a
|
| - // given source rect would affect. Mapping a rect backwards determines
|
| - // which pixels from the source rect would be required to fill a given
|
| - // destination rect. Note that these are not necessarily the inverse of
|
| - // each other. For example, for FEGaussianBlur, they are the same
|
| - // transformation.
|
| - virtual FloatRect mapRect(const FloatRect& rect, bool forward = true) const { return rect; }
|
| - // A version of the above that is used for calculating paint rects. We can't
|
| - // use mapRect above for that, because that is also used for calculating effect
|
| - // regions for CSS filters and has undesirable effects for tile and
|
| - // displacement map.
|
| - virtual FloatRect mapPaintRect(const FloatRect& rect, bool forward) const
|
| - {
|
| - return mapRect(rect, forward);
|
| - }
|
| - FloatRect mapRectRecursive(const FloatRect&) const;
|
| -
|
| virtual FilterEffectType getFilterEffectType() const { return FilterEffectTypeUnknown; }
|
|
|
| virtual TextStream& externalRepresentation(TextStream&, int indention = 0) const;
|
| @@ -104,9 +91,6 @@ public:
|
| ColorSpace operatingColorSpace() const { return m_operatingColorSpace; }
|
| virtual void setOperatingColorSpace(ColorSpace colorSpace) { m_operatingColorSpace = colorSpace; }
|
|
|
| - // Compute the "paint rect" (which destination pixels will be affected) for
|
| - // the given rect. In the coordinate space of the target.
|
| - virtual FloatRect determineAbsolutePaintRect(const FloatRect& requestedAbsoluteRect) const;
|
| virtual bool affectsTransparentPixels() const { return false; }
|
|
|
| // Return false if the filter will only operate correctly on valid RGBA values, with
|
| @@ -124,6 +108,17 @@ public:
|
| protected:
|
| FilterEffect(Filter*);
|
|
|
| + // Determine the contribution from the filter effect's inputs.
|
| + virtual FloatRect mapInputs(const FloatRect&) const;
|
| +
|
| + // Apply the contribution from the filter effect's itself. (Like
|
| + // expanding with the blur radius etc.)
|
| + virtual FloatRect mapEffect(const FloatRect&) const;
|
| +
|
| + // Apply the clip bounds and factor in the effect of
|
| + // affectsTransparentPixels().
|
| + FloatRect applyBounds(const FloatRect&) const;
|
| +
|
| sk_sp<SkImageFilter> createTransparentBlack() const;
|
|
|
| Color adaptColorToOperatingColorSpace(const Color& deviceColor);
|
|
|