Index: src/gpu/SkGpuDevice.cpp |
diff --git a/src/gpu/SkGpuDevice.cpp b/src/gpu/SkGpuDevice.cpp |
index 873256d15f848164c0394f387f3dc64947425afb..88f584711cc1fea11dfb26d3c93acffcf7cb1900 100644 |
--- a/src/gpu/SkGpuDevice.cpp |
+++ b/src/gpu/SkGpuDevice.cpp |
@@ -365,7 +365,8 @@ void SkGpuDevice::drawPaint(const SkDraw& draw, const SkPaint& paint) { |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -416,7 +417,8 @@ void SkGpuDevice::drawPoints(const SkDraw& draw, SkCanvas::PointMode mode, |
GrStyle style(paint, SkPaint::kStroke_Style); |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
SkPath path; |
@@ -437,7 +439,8 @@ void SkGpuDevice::drawPoints(const SkDraw& draw, SkCanvas::PointMode mode, |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -475,7 +478,8 @@ void SkGpuDevice::drawRect(const SkDraw& draw, const SkRect& rect, const SkPaint |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -493,7 +497,8 @@ void SkGpuDevice::drawRRect(const SkDraw& draw, const SkRRect& rect, |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -569,7 +574,8 @@ void SkGpuDevice::drawDRRect(const SkDraw& draw, const SkRRect& outer, |
if (stroke.isFillStyle() && !paint.getMaskFilter() && !paint.getPathEffect()) { |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -614,7 +620,8 @@ void SkGpuDevice::drawOval(const SkDraw& draw, const SkRect& oval, const SkPaint |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -671,7 +678,8 @@ void SkGpuDevice::drawStrokedLine(const SkPoint points[2], |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), newPaint, m, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -1168,7 +1176,8 @@ void SkGpuDevice::internalDrawBitmap(const SkBitmap& bitmap, |
GrPaint grPaint; |
if (!SkPaintToGrPaintWithTexture(this->context(), paint, viewMatrix, std::move(fp), |
kAlpha_8_SkColorType == bitmap.colorType(), |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
@@ -1259,7 +1268,8 @@ void SkGpuDevice::drawSpecial(const SkDraw& draw, |
fp = GrFragmentProcessor::MulOutputByInputAlpha(std::move(fp)); |
} |
if (!SkPaintToGrPaintReplaceShader(this->context(), tmpUnfiltered, std::move(fp), |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
@@ -1547,7 +1557,8 @@ void SkGpuDevice::drawProducerNine(const SkDraw& draw, GrTextureProducer* produc |
&kMode, fDrawContext->getColorSpace(), gammaTreatment)); |
GrPaint grPaint; |
if (!SkPaintToGrPaintWithTexture(this->context(), paint, *draw.fMatrix, std::move(fp), |
- producer->isAlphaOnly(), gammaCorrect, &grPaint)) { |
+ producer->isAlphaOnly(), gammaCorrect, |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
@@ -1615,7 +1626,8 @@ void SkGpuDevice::drawVertices(const SkDraw& draw, SkCanvas::VertexMode vmode, |
GrPaint grPaint; |
// we ignore the shader if texs is null. |
if (!SkPaintToGrPaintNoShader(this->context(), copy, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
@@ -1688,13 +1700,14 @@ void SkGpuDevice::drawVertices(const SkDraw& draw, SkCanvas::VertexMode vmode, |
} |
if (!SkPaintToGrPaintWithXfermode(this->context(), paint, *draw.fMatrix, colorMode, |
false, this->surfaceProps().isGammaCorrect(), |
- &grPaint)) { |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} else { |
// We have a shader, but no colors to blend it against. |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} |
@@ -1704,13 +1717,14 @@ void SkGpuDevice::drawVertices(const SkDraw& draw, SkCanvas::VertexMode vmode, |
// we should ignore the shader). |
if (!SkPaintToGrPaintWithPrimitiveColor(this->context(), paint, |
this->surfaceProps().isGammaCorrect(), |
- &grPaint)) { |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} else { |
// No colors and no shaders. Just draw with the paint color. |
if (!SkPaintToGrPaintNoShader(this->context(), paint, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} |
@@ -1748,12 +1762,14 @@ void SkGpuDevice::drawAtlas(const SkDraw& draw, const SkImage* atlas, const SkRS |
GrPaint grPaint; |
if (colors) { |
if (!SkPaintToGrPaintWithXfermode(this->context(), p, *draw.fMatrix, mode, true, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} else { |
if (!SkPaintToGrPaint(this->context(), p, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), |
+ fDrawContext->getColorSpace(), &grPaint)) { |
return; |
} |
} |
@@ -1773,7 +1789,8 @@ void SkGpuDevice::drawText(const SkDraw& draw, const void* text, |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |
@@ -1792,7 +1809,8 @@ void SkGpuDevice::drawPosText(const SkDraw& draw, const void* text, size_t byteL |
GrPaint grPaint; |
if (!SkPaintToGrPaint(this->context(), paint, *draw.fMatrix, |
- this->surfaceProps().isGammaCorrect(), &grPaint)) { |
+ this->surfaceProps().isGammaCorrect(), fDrawContext->getColorSpace(), |
+ &grPaint)) { |
return; |
} |