aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
diff options
context:
space:
mode:
authorGravatar joshualitt <joshualitt@chromium.org>2014-07-29 12:59:27 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-07-29 12:59:27 -0700
commit5ae5fc59b27a48711e514b3ede548b228e393e9b (patch)
tree94f6fe685a1bfcc9e15704cda869c67b97f057d3 /src/effects
parent937fca81067d31bb74fc299469b2406a12064436 (diff)
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
Diffstat (limited to 'src/effects')
-rw-r--r--src/effects/SkMatrixConvolutionImageFilter.cpp25
1 files changed, 13 insertions, 12 deletions
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<int>(SkMatrixConvolutionImageFilter::kClamp_TileMode) ==
- static_cast<int>(GrMatrixConvolutionEffect::kClamp_TileMode));
- GR_STATIC_ASSERT(static_cast<int>(SkMatrixConvolutionImageFilter::kRepeat_TileMode) ==
- static_cast<int>(GrMatrixConvolutionEffect::kRepeat_TileMode));
- GR_STATIC_ASSERT(static_cast<int>(SkMatrixConvolutionImageFilter::kClampToBlack_TileMode) ==
- static_cast<int>(GrMatrixConvolutionEffect::kClampToBlack_TileMode));
- GR_STATIC_ASSERT(static_cast<int>(SkMatrixConvolutionImageFilter::kMax_TileMode) ==
- static_cast<int>(GrMatrixConvolutionEffect::kMax_TileMode));
- return static_cast<GrMatrixConvolutionEffect::TileMode>(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;
}