fix shadows with gradients
Created attachment 89271 [details] Patch
Created attachment 89272 [details] Patch
requires DEPS roll of skia to rev. >= 1115
Attachment 89272 [details] did not build on chromium: Build output: http://queues.webkit.org/results/8400012
Created attachment 89370 [details] Patch
Reuploaded patch now that the dependent Skia DEPS roll has landed.
Attachment 89370 [details] did not build on chromium: Build output: http://queues.webkit.org/results/8397245
grrr, guess webkit hasn't pulled the latest chrome yet...
A couple of style issues: > Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:1075 > + (void)dl->addLayer(); // top layer, we just draw unchanged (void) ? Why is this needed? > Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:1087 > + mfFlags); I don't think this is the correct indent?
Created attachment 89428 [details] Patch
fixed indent
Comment on attachment 89428 [details] Patch LGTM View in context: https://bugs.webkit.org/attachment.cgi?id=89428&action=review > Source/WebCore/platform/graphics/skia/GraphicsContextSkia.cpp:1074 > + SkLayerDrawLooper* dl = new SkLayerDrawLooper; Can we please use a scoped pointer for this?
Created attachment 89436 [details] Patch
LGTM
Attachment 89436 [details] did not build on chromium: Build output: http://queues.webkit.org/results/8400410
Created attachment 89570 [details] Patch
Attachment 89570 [details] did not build on chromium: Build output: http://queues.webkit.org/results/8401667
Created attachment 89575 [details] Patch
had to roll Source/WebKit/chromium/DEPS as well to pick up the new skia api
Comment on attachment 89575 [details] Patch Clearing flags on attachment: 89575 Committed r83936: <http://trac.webkit.org/changeset/83936>
All reviewed patches have been landed. Closing bug.
Apparently, this breaks shared library build due to lack of SK_API declaration on several Skia classes this patch introduces: http://build.chromium.org/p/chromium/builders/Win%20Builder%20%28dbg%29%28shared%29/builds/5584/steps/compile/logs/stdio_html webkit errors: 1: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: class SkPaint * __thiscall SkLayerDrawLooper::addLayer(struct SkLayerDrawLooper::LayerInfo const &)" (?addLayer@SkLayerDrawLooper@@QAEPAVSkPaint@@ABULayerInfo@1@@Z) referenced in function "private: void __thiscall WebCore::GraphicsContext::setPlatformShadow(class WebCore::FloatSize const &,float,class WebCore::Color const &,enum WebCore::ColorSpace)" (?setPlatformShadow@GraphicsContext@WebCore@@AAEXABVFloatSize@2@MABVColor@2@W4ColorSpace@2@@Z) 2: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: static class SkColorFilter * __cdecl SkColorFilter::CreateModeFilter(unsigned int,enum SkXfermode::Mode)" (?CreateModeFilter@SkColorFilter@@SAPAV1@IW4Mode@SkXfermode@@@Z) referenced in function "private: void __thiscall WebCore::GraphicsContext::setPlatformShadow(class WebCore::FloatSize const &,float,class WebCore::Color const &,enum WebCore::ColorSpace)" (?setPlatformShadow@GraphicsContext@WebCore@@AAEXABVFloatSize@2@MABVColor@2@W4ColorSpace@2@@Z) 3: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: static class SkMaskFilter * __cdecl SkBlurMaskFilter::Create(float,enum SkBlurMaskFilter::BlurStyle,unsigned int)" (?Create@SkBlurMaskFilter@@SAPAVSkMaskFilter@@MW4BlurStyle@1@I@Z) referenced in function "private: void __thiscall WebCore::GraphicsContext::setPlatformShadow(class WebCore::FloatSize const &,float,class WebCore::Color const &,enum WebCore::ColorSpace)" (?setPlatformShadow@GraphicsContext@WebCore@@AAEXABVFloatSize@2@MABVColor@2@W4ColorSpace@2@@Z) 4: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: __thiscall SkLayerDrawLooper::LayerInfo::LayerInfo(void)" (??0LayerInfo@SkLayerDrawLooper@@QAE@XZ) referenced in function "private: void __thiscall WebCore::GraphicsContext::setPlatformShadow(class WebCore::FloatSize const &,float,class WebCore::Color const &,enum WebCore::ColorSpace)" (?setPlatformShadow@GraphicsContext@WebCore@@AAEXABVFloatSize@2@MABVColor@2@W4ColorSpace@2@@Z) 5: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: __thiscall SkLayerDrawLooper::SkLayerDrawLooper(void)" (??0SkLayerDrawLooper@@QAE@XZ) referenced in function "private: void __thiscall WebCore::GraphicsContext::setPlatformShadow(class WebCore::FloatSize const &,float,class WebCore::Color const &,enum WebCore::ColorSpace)" (?setPlatformShadow@GraphicsContext@WebCore@@AAEXABVFloatSize@2@MABVColor@2@W4ColorSpace@2@@Z) 6: webcore_platform.lib(GraphicsContextSkia.obj) : error LNK2019: unresolved external symbol "public: class SkPaint * __thiscall SkLayerDrawLooper::addLayer(float,float)" (?addLayer@SkLayerDrawLooper@@QAEPAVSkPaint@@MM@Z) referenced in function "public: class SkPaint * __thiscall SkLayerDrawLooper::addLayer(void)" (?addLayer@SkLayerDrawLooper@@QAEPAVSkPaint@@XZ) 7: C:\b\build\slave\Win_Builder__dbg__shared_\build\src\build\Debug\webkit.dll : fatal error LNK1120: 6 unresolved externals
bsalomon is working on a fix as we speak (to chromium)