Index: src/core/SkBitmapFilter.cpp |
diff --git a/src/core/SkBitmapFilter.cpp b/src/core/SkBitmapFilter.cpp |
index 3cbafd743c1eb9943b451f0a8129105b32da3253..2b9520d270ac3f9ea2965bc6c24e2960de64b645 100644 |
--- a/src/core/SkBitmapFilter.cpp |
+++ b/src/core/SkBitmapFilter.cpp |
@@ -147,12 +147,13 @@ static SkBitmapFilter *allocateBitmapFilter() { |
} |
SkBitmapProcState::ShaderProc32 |
-SkBitmapProcState::chooseBitmapFilterProc(const SkPaint& paint) { |
- // we need to be requested |
- uint32_t mask = SkPaint::kFilterBitmap_Flag |
- | SkPaint::kHighQualityFilterBitmap_Flag |
- ; |
- if ((paint.getFlags() & mask) != mask) { |
+SkBitmapProcState::chooseBitmapFilterProc() { |
+ |
+ if (fFilterQuality != kHQ_BitmapFilter) { |
+ return NULL; |
+ } |
+ |
+ if (fAlphaScale != 256) { |
return NULL; |
} |
@@ -166,11 +167,6 @@ SkBitmapProcState::chooseBitmapFilterProc(const SkPaint& paint) { |
return NULL; |
} |
- // TODO: support blending inside our procs |
- if (0xFF != paint.getAlpha()) { |
- return NULL; |
- } |
- |
if (fInvType & (SkMatrix::kAffine_Mask | SkMatrix::kScale_Mask)) { |
fBitmapFilter = allocateBitmapFilter(); |
} |