From 5ae5fc59b27a48711e514b3ede548b228e393e9b Mon Sep 17 00:00:00 2001 From: joshualitt Date: Tue, 29 Jul 2014 12:59:27 -0700 Subject: Adding repeat mode to texture domain BUG=skia: R=bsalomon@chromium.org, senorblanco@chromium.org, bsalomon@google.com, junov@chromium.org Author: joshualitt@chromium.org Review URL: https://codereview.chromium.org/422123003 --- src/effects/SkMatrixConvolutionImageFilter.cpp | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) (limited to 'src/effects') diff --git a/src/effects/SkMatrixConvolutionImageFilter.cpp b/src/effects/SkMatrixConvolutionImageFilter.cpp index f1017203bf..6e1d1a4652 100644 --- a/src/effects/SkMatrixConvolutionImageFilter.cpp +++ b/src/effects/SkMatrixConvolutionImageFilter.cpp @@ -319,24 +319,25 @@ bool SkMatrixConvolutionImageFilter::onFilterBounds(const SkIRect& src, const Sk #if SK_SUPPORT_GPU -static GrMatrixConvolutionEffect::TileMode convert_tilemodes( +static GrTextureDomain::Mode convert_tilemodes( SkMatrixConvolutionImageFilter::TileMode tileMode) { - GR_STATIC_ASSERT(static_cast(SkMatrixConvolutionImageFilter::kClamp_TileMode) == - static_cast(GrMatrixConvolutionEffect::kClamp_TileMode)); - GR_STATIC_ASSERT(static_cast(SkMatrixConvolutionImageFilter::kRepeat_TileMode) == - static_cast(GrMatrixConvolutionEffect::kRepeat_TileMode)); - GR_STATIC_ASSERT(static_cast(SkMatrixConvolutionImageFilter::kClampToBlack_TileMode) == - static_cast(GrMatrixConvolutionEffect::kClampToBlack_TileMode)); - GR_STATIC_ASSERT(static_cast(SkMatrixConvolutionImageFilter::kMax_TileMode) == - static_cast(GrMatrixConvolutionEffect::kMax_TileMode)); - return static_cast(tileMode); + switch (tileMode) { + case SkMatrixConvolutionImageFilter::kClamp_TileMode: + return GrTextureDomain::kClamp_Mode; + case SkMatrixConvolutionImageFilter::kRepeat_TileMode: + return GrTextureDomain::kRepeat_Mode; + case SkMatrixConvolutionImageFilter::kClampToBlack_TileMode: + return GrTextureDomain::kDecal_Mode; + default: + SkASSERT(false); + } + return GrTextureDomain::kIgnore_Mode; } bool SkMatrixConvolutionImageFilter::asNewEffect(GrEffect** effect, GrTexture* texture, const SkMatrix&, - const SkIRect& bounds - ) const { + const SkIRect& bounds) const { if (!effect) { return fKernelSize.width() * fKernelSize.height() <= MAX_KERNEL_SIZE; } -- cgit v1.2.3