diff options
author | Russell Brenner <russellbrenner@google.com> | 2011-03-22 10:56:59 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-03-22 10:56:59 -0700 |
commit | 9ae96f817b1e51451a4e20bb1a1ceb225ba2d9e5 (patch) | |
tree | 579d74c0f3324032216301bb109635538f9f5900 /WebCore/platform/graphics/android/GraphicsContextAndroid.cpp | |
parent | af4dc085587645c91d0b74c17fdc159ed9ba1825 (diff) | |
parent | 54b4a84eb76b06b7a4ff51b331b8999751545aa7 (diff) | |
download | external_webkit-9ae96f817b1e51451a4e20bb1a1ceb225ba2d9e5.zip external_webkit-9ae96f817b1e51451a4e20bb1a1ceb225ba2d9e5.tar.gz external_webkit-9ae96f817b1e51451a4e20bb1a1ceb225ba2d9e5.tar.bz2 |
Merge "Fix graphics shadow w/o blur"
Diffstat (limited to 'WebCore/platform/graphics/android/GraphicsContextAndroid.cpp')
-rw-r--r-- | WebCore/platform/graphics/android/GraphicsContextAndroid.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/WebCore/platform/graphics/android/GraphicsContextAndroid.cpp b/WebCore/platform/graphics/android/GraphicsContextAndroid.cpp index 2f5a4b9..9d5e49c 100644 --- a/WebCore/platform/graphics/android/GraphicsContextAndroid.cpp +++ b/WebCore/platform/graphics/android/GraphicsContextAndroid.cpp @@ -70,10 +70,16 @@ template <typename T> T* deepCopyPtr(const T* src) // Is Color premultiplied or not? If it is, then I can't blindly pass it to paint.setColor() struct ShadowRec { - SkScalar blur; // >0 means valid shadow + SkScalar blur; SkScalar dx; SkScalar dy; - SkColor color; + SkColor color; // alpha>0 means valid shadow + ShadowRec(SkScalar b = 0, + SkScalar x = 0, + SkScalar y = 0, + SkColor c = 0) // by default, alpha=0, so no shadow + : blur(b), dx(x), dy(y), color(c) + {}; }; class GraphicsContextPlatformPrivate { @@ -110,7 +116,6 @@ public: , strokeColor(SK_ColorBLACK) , useAA(true) { - shadow.blur = 0; } State(const State& other) @@ -252,7 +257,7 @@ public: paint->setAntiAlias(m_state->useAA); paint->setDither(true); paint->setXfermodeMode(m_state->mode); - if (m_state->shadow.blur > 0) { + if (SkColorGetA(m_state->shadow.color) > 0) { SkDrawLooper* looper = new SkBlurDrawLooper(m_state->shadow.blur, m_state->shadow.dx, m_state->shadow.dy, |