Chromium Code Reviews| Index: Source/platform/graphics/DrawLooper.cpp |
| diff --git a/Source/platform/graphics/DrawLooper.cpp b/Source/platform/graphics/DrawLooper.cpp |
| index 7e32af73feaa58f46031efb5b0aea099ef61749c..f3a9dcc307571216879092ec18b4782d477a3dd7 100644 |
| --- a/Source/platform/graphics/DrawLooper.cpp |
| +++ b/Source/platform/graphics/DrawLooper.cpp |
| @@ -39,11 +39,10 @@ |
| #include "third_party/skia/include/core/SkPaint.h" |
| #include "third_party/skia/include/core/SkXfermode.h" |
| #include "third_party/skia/include/effects/SkBlurMaskFilter.h" |
| -#include "third_party/skia/include/effects/SkLayerDrawLooper.h" |
| namespace WebCore { |
| -DrawLooper::DrawLooper() : m_skDrawLooper(adoptRef(new SkLayerDrawLooper)) { } |
| +DrawLooper::DrawLooper(SkDrawLooper* looper) : m_skDrawLooper(adoptRef(looper)) { } |
|
jbroman
2014/02/24 17:47:44
Nit (see what schenney thinks):
My preference wou
Dominik Grewe
2014/02/24 18:34:39
Done.
|
| DrawLooper::~DrawLooper() { } |
| @@ -52,13 +51,13 @@ SkDrawLooper* DrawLooper::skDrawLooper() const |
| return m_skDrawLooper.get(); |
| } |
| -void DrawLooper::addUnmodifiedContent() |
| +void DrawLooper::Builder::addUnmodifiedContent() |
| { |
| SkLayerDrawLooper::LayerInfo info; |
| - m_skDrawLooper->addLayerOnTop(info); |
| + m_skDrawLooperBuilder.addLayerOnTop(info); |
| } |
| -void DrawLooper::addShadow(const FloatSize& offset, float blur, const Color& color, |
| +void DrawLooper::Builder::addShadow(const FloatSize& offset, float blur, const Color& color, |
| ShadowTransformMode shadowTransformMode, ShadowAlphaMode shadowAlphaMode) |
| { |
| // Detect when there's no effective shadow. |
| @@ -86,7 +85,7 @@ void DrawLooper::addShadow(const FloatSize& offset, float blur, const Color& col |
| info.fOffset.set(offset.width(), offset.height()); |
| info.fPostTranslate = (shadowTransformMode == ShadowIgnoresTransforms); |
| - SkPaint* paint = m_skDrawLooper->addLayerOnTop(info); |
| + SkPaint* paint = m_skDrawLooperBuilder.addLayerOnTop(info); |
| if (blur) { |
| uint32_t mfFlags = SkBlurMaskFilter::kHighQuality_BlurFlag; |
| @@ -101,4 +100,9 @@ void DrawLooper::addShadow(const FloatSize& offset, float blur, const Color& col |
| paint->setColorFilter(cf.get()); |
| } |
| +PassRefPtr<DrawLooper> DrawLooper::Builder::detachDrawLooper() |
| +{ |
| + return adoptRef(new DrawLooper(m_skDrawLooperBuilder.detachLooper())); |
| +} |
| + |
| } // namespace WebCore |