diff options
author | schenney <schenney@chromium.org> | 2015-10-06 12:59:55 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-06 12:59:55 -0700 |
commit | 95376a0dde3cdf414eb97a20cef3af19ed7e0151 (patch) | |
tree | b304b560eec5feed75d621c1aa3ec9a7df2573d9 /include/effects/SkTileImageFilter.h | |
parent | ccb88bcab03c2d7450b25f614b9203b8b9d7640d (diff) |
Revert of factories should return baseclass, allowing the impl to specialize (patchset #4 id:60001 of https://codereview.chromium.org/1390523005/ )
Reason for revert:
Breaks Chrome with this link error: ../../third_party/skia/include/effects/SkMorphologyImageFilter.h:75: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)'
../../third_party/skia/include/effects/SkMorphologyImageFilter.h:104: error: undefined reference to 'SkMorphologyImageFilter::SkMorphologyImageFilter(int, int, SkImageFilter*, SkImageFilter::CropRect const*)'
Presumably due to code in third_party/WebKit/Source/platform/graphics/filters/FEMorphology.cpp that contains:
#include "SkMorphologyImageFilter.h"
...
if (m_type == FEMORPHOLOGY_OPERATOR_DILATE)
return adoptRef(SkDilateImageFilter::Create(radiusX, radiusY, input.get(), &rect));
return adoptRef(SkErodeImageFilter::Create(radiusX, radiusY, input.get(), &rect));
Original issue's description:
> factories should return baseclass, allowing the impl to specialize
>
> waiting on https://codereview.chromium.org/1386163002/# to land
>
> BUG=skia:4424
>
> Committed: https://skia.googlesource.com/skia/+/80a6dcaa1b757826ed7414f64b035d512d9ccbf8
TBR=senorblanco@google.com,robertphillips@google.com,reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:4424
Review URL: https://codereview.chromium.org/1389063002
Diffstat (limited to 'include/effects/SkTileImageFilter.h')
-rw-r--r-- | include/effects/SkTileImageFilter.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/include/effects/SkTileImageFilter.h b/include/effects/SkTileImageFilter.h index a2a1bb0fe1..4dccf852be 100644 --- a/include/effects/SkTileImageFilter.h +++ b/include/effects/SkTileImageFilter.h @@ -15,11 +15,12 @@ class SK_API SkTileImageFilter : public SkImageFilter { public: /** Create a tile image filter - @param src Defines the pixels to tile - @param dst Defines the pixels where tiles are drawn + @param srcRect Defines the pixels to tile + @param dstRect Defines the pixels where tiles are drawn @param input Input from which the subregion defined by srcRect will be tiled */ - static SkImageFilter* Create(const SkRect& src, const SkRect& dst, SkImageFilter* input); + static SkTileImageFilter* Create(const SkRect& srcRect, const SkRect& dstRect, + SkImageFilter* input); bool onFilterImage(Proxy* proxy, const SkBitmap& src, const Context& ctx, SkBitmap* dst, SkIPoint* offset) const override; @@ -31,12 +32,12 @@ public: SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkTileImageFilter) protected: - void flatten(SkWriteBuffer& buffer) const override; - -private: SkTileImageFilter(const SkRect& srcRect, const SkRect& dstRect, SkImageFilter* input) : INHERITED(1, &input, NULL), fSrcRect(srcRect), fDstRect(dstRect) {} + void flatten(SkWriteBuffer& buffer) const override; + +private: SkRect fSrcRect; SkRect fDstRect; }; |