diff options
Diffstat (limited to 'src/gpu/SkGpuDevice.cpp')
-rw-r--r-- | src/gpu/SkGpuDevice.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp index c3e495ae28..491e273216 100644 --- a/src/gpu/SkGpuDevice.cpp +++ b/src/gpu/SkGpuDevice.cpp @@ -411,7 +411,9 @@ SK_COMPILE_ASSERT(SkShader::kRadial_BitmapType == 2, shader_type_mismatch); SK_COMPILE_ASSERT(SkShader::kSweep_BitmapType == 3, shader_type_mismatch); SK_COMPILE_ASSERT(SkShader::kTwoPointRadial_BitmapType == 4, shader_type_mismatch); -SK_COMPILE_ASSERT(SkShader::kLast_BitmapType == 4, shader_type_mismatch); +SK_COMPILE_ASSERT(SkShader::kTwoPointConical_BitmapType == 5, + shader_type_mismatch); +SK_COMPILE_ASSERT(SkShader::kLast_BitmapType == 5, shader_type_mismatch); namespace { @@ -545,6 +547,13 @@ inline bool skPaint2GrPaintShader(SkGpuDevice* dev, twoPointParams[2] < 0))->unref(); sampler->setFilter(GrSamplerState::kBilinear_Filter); break; + case SkShader::kTwoPointConical_BitmapType: + sampler->setCustomStage(new + GrConical2Gradient(twoPointParams[0], + twoPointParams[1], + twoPointParams[2]))->unref(); + sampler->setFilter(GrSamplerState::kBilinear_Filter); + break; default: if (skPaint.isFilterBitmap()) { sampler->setFilter(GrSamplerState::kBilinear_Filter); |