Index: Source/core/platform/graphics/skia/NativeImageSkia.cpp |
diff --git a/Source/core/platform/graphics/skia/NativeImageSkia.cpp b/Source/core/platform/graphics/skia/NativeImageSkia.cpp |
index dc81cd51250e37ec5b8ba5b44688e66325db6b8e..44d85a9f7c4cb0797fe8fc2c3bff37449673b074 100644 |
--- a/Source/core/platform/graphics/skia/NativeImageSkia.cpp |
+++ b/Source/core/platform/graphics/skia/NativeImageSkia.cpp |
@@ -31,6 +31,7 @@ |
#include "config.h" |
#include "core/platform/graphics/skia/NativeImageSkia.h" |
+#include "core/platform/FloatConversion.h" |
#include "core/platform/PlatformInstrumentation.h" |
#include "core/platform/chromium/TraceEvent.h" |
#include "core/platform/graphics/FloatPoint.h" |
@@ -326,7 +327,14 @@ void NativeImageSkia::draw(GraphicsContext* context, const SkRect& srcRect, cons |
SkPaint paint; |
paint.setXfermodeMode(compOp); |
paint.setAlpha(context->getNormalizedAlpha()); |
- paint.setLooper(context->drawLooper()); |
+ DrawLooper* drawLooper = context->drawLooper(); |
+ if (drawLooper) { |
+ if (drawLooper->shouldUseImageFilterToDrawBitmap(bitmap())) { |
+ paint.setImageFilter(context->drawLooper()->imageFilter()); |
+ } else { |
+ paint.setLooper(drawLooper->skDrawLooper()); |
+ } |
+ } |
// only antialias if we're rotated or skewed |
paint.setAntiAlias(hasNon90rotation(context)); |