| Index: src/gpu/gl/GrGLProgram.cpp
|
| diff --git a/src/gpu/gl/GrGLProgram.cpp b/src/gpu/gl/GrGLProgram.cpp
|
| index da687c1eb6e5c84db74832be88e00b105d9d702e..21846c2403567921613a3413a078e46ef0988fd7 100644
|
| --- a/src/gpu/gl/GrGLProgram.cpp
|
| +++ b/src/gpu/gl/GrGLProgram.cpp
|
| @@ -132,10 +132,9 @@ void GrGLProgram::bindTextures(const GrGLInstalledProc* ip, const GrProcessor& p
|
|
|
| void GrGLProgram::setData(const GrOptDrawState& optState) {
|
| GrColor color = optState.getColor();
|
| - uint8_t coverage = optState.getCoverage();
|
|
|
| + // TODO delete this once the path processor can set color
|
| this->setColor(optState, color);
|
| - this->setCoverage(optState, coverage);
|
| this->setMatrixAndRenderTargetHeight(optState);
|
|
|
| const GrDeviceCoordTexture* dstCopy = optState.getDstCopy();
|
| @@ -210,47 +209,15 @@ void GrGLProgram::didSetData(GrGpu::DrawType drawType) {
|
| }
|
|
|
| void GrGLProgram::setColor(const GrOptDrawState& optState, GrColor color) {
|
| - const GrProgramDesc::KeyHeader& header = fDesc.header();
|
| - switch (header.fColorInput) {
|
| - case GrProgramDesc::kAttribute_ColorInput:
|
| - // Attribute case is handled in GrGpuGL::setupGeometry
|
| - break;
|
| - case GrProgramDesc::kUniform_ColorInput:
|
| - if (fColor != color && fBuiltinUniformHandles.fColorUni.isValid()) {
|
| - // OpenGL ES doesn't support unsigned byte varieties of glUniform
|
| - GrGLfloat c[4];
|
| - GrColorToRGBAFloat(color, c);
|
| - fProgramDataManager.set4fv(fBuiltinUniformHandles.fColorUni, 1, c);
|
| - fColor = color;
|
| - }
|
| - break;
|
| - case GrProgramDesc::kAllOnes_ColorInput:
|
| - // Handled by shader creation
|
| - break;
|
| - default:
|
| - SkFAIL("Unexpected color type.");
|
| - }
|
| -}
|
| -
|
| -void GrGLProgram::setCoverage(const GrOptDrawState& optState, uint8_t coverage) {
|
| - const GrProgramDesc::KeyHeader& header = fDesc.header();
|
| - switch (header.fCoverageInput) {
|
| - case GrProgramDesc::kAttribute_ColorInput:
|
| - // Attribute case is handled in GrGpuGL::setupGeometry
|
| - break;
|
| - case GrProgramDesc::kUniform_ColorInput:
|
| - if (fCoverage != coverage) {
|
| - // OpenGL ES doesn't support unsigned byte varieties of glUniform
|
| - GrGLfloat c = GrNormalizeByteToFloat(coverage);
|
| - fProgramDataManager.set1f(fBuiltinUniformHandles.fCoverageUni, c);
|
| - fCoverage = coverage;
|
| - }
|
| - break;
|
| - case GrProgramDesc::kAllOnes_ColorInput:
|
| - // Handled by shader creation
|
| - break;
|
| - default:
|
| - SkFAIL("Unexpected coverage type.");
|
| + const GrGLProgramDescBuilder::GLKeyHeader& header = GrGLProgramDescBuilder::GetHeader(fDesc);
|
| + if (header.fUseNvpr) {
|
| + if (fColor != color && fBuiltinUniformHandles.fColorUni.isValid()) {
|
| + // OpenGL ES doesn't support unsigned byte varieties of glUniform
|
| + GrGLfloat c[4];
|
| + GrColorToRGBAFloat(color, c);
|
| + fProgramDataManager.set4fv(fBuiltinUniformHandles.fColorUni, 1, c);
|
| + fColor = color;
|
| + }
|
| }
|
| }
|
|
|
|
|