https://drafts.csswg.org/css-images-4/#conic-gradients
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d25c21ff39a3dfc462ac0bbbb402f8e314acf576 commit d25c21ff39a3dfc462ac0bbbb402f8e314acf576 Author: fmalita <fmalita@chromium.org> Date: Fri Mar 31 20:40:48 2017 Initial conic-gradient() implementation Introduce a new Gradient specialization (ConicGradient), and wire it to Skia's SkSweepGradient. Only non-repeating conic gradients are supported for now. Tests based on Lea Verou's excellent https://leaverou.github.io/conic-gradient/. BUG= 706973 Review-Url: https://codereview.chromium.org/2787113002 Cr-Commit-Position: refs/heads/master@{#461213} [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient-expected.png [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient-expected.txt [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient-positioning-expected.txt [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient-positioning.html [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient.html [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/linux/fast/gradients/conic-gradient-positioning-expected.png [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-expected.png [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-expected.txt [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-positioning-expected.png [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-positioning-expected.txt [add] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/LayoutTests/platform/win/fast/gradients/conic-gradient-positioning-expected.png [modify] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/Source/core/css/CSSGradientValue.cpp [modify] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/Source/platform/graphics/Gradient.cpp [modify] https://crrev.com/d25c21ff39a3dfc462ac0bbbb402f8e314acf576/third_party/WebKit/Source/platform/graphics/Gradient.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a commit 65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a Author: fmalita <fmalita@chromium.org> Date: Wed Apr 05 22:36:48 2017 Add support for repeating-conic-gradient() Since the underlying SkSweepGradient implementation doesn't support repeating color stops, generate synthetic stops to cover the whole unit interval. Interpolate colors for 0 and 1 when stops are not coincident. We can also remove the ConicGradient spread method ctor arg, as it serves no purpose. BUG= 706973 Review-Url: https://codereview.chromium.org/2792163002 Cr-Commit-Position: refs/heads/master@{#462250} [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/fast/gradients/conic-gradient-out-of-range.html [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/fast/gradients/repeating-conic-gradient-expected.png [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/fast/gradients/repeating-conic-gradient-expected.txt [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/fast/gradients/repeating-conic-gradient.html [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/linux/fast/gradients/conic-gradient-out-of-range-expected.png [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/linux/fast/gradients/conic-gradient-out-of-range-expected.txt [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-out-of-range-expected.png [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/conic-gradient-out-of-range-expected.txt [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/repeating-conic-gradient-expected.png [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/mac/fast/gradients/repeating-conic-gradient-expected.txt [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/win/fast/gradients/conic-gradient-out-of-range-expected.png [add] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/LayoutTests/platform/win/fast/gradients/conic-gradient-out-of-range-expected.txt [modify] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/Source/core/css/CSSGradientValue.cpp [modify] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/Source/platform/graphics/Gradient.cpp [modify] https://crrev.com/65a58f0cd7291f90e7edd10ea42c7c8de24f3d1a/third_party/WebKit/Source/platform/graphics/Gradient.h
Comment 1 by bugdroid1@chromium.org
, Mar 31 2017