diff options
author | 2016-07-08 14:43:03 -0700 | |
---|---|---|
committer | 2016-07-08 14:43:04 -0700 | |
commit | 443023975e335e3630191227dbc21fa72c436af3 (patch) | |
tree | 7bdf397d73cd80ecf450db54e3932d6d74604e29 /src/gpu/GrDrawTarget.cpp | |
parent | 9a4cfa81de1f485c630785eef5e305c60faab80a (diff) |
Add choke point for modifying non-AA rect draws (e.g., applying clipping)
NOTREECHECKS=true
NOPRESUBMIT=true
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2125333002
Committed: https://skia.googlesource.com/skia/+/e5e3a7a5203f256083d015c923cc9c662877aba9
Review-Url: https://codereview.chromium.org/2125333002
Diffstat (limited to 'src/gpu/GrDrawTarget.cpp')
-rw-r--r-- | src/gpu/GrDrawTarget.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/gpu/GrDrawTarget.cpp b/src/gpu/GrDrawTarget.cpp index 8beaade32c..bffe2f9740 100644 --- a/src/gpu/GrDrawTarget.cpp +++ b/src/gpu/GrDrawTarget.cpp @@ -469,15 +469,13 @@ void GrDrawTarget::clear(const SkIRect* rect, drawContext->discard(); } - // TODO: flip this into real draw! - GrPipelineBuilder pipelineBuilder; - pipelineBuilder.setXPFactory(GrPorterDuffXPFactory::Make(SkXfermode::kSrc_Mode)); - SkRect scalarRect = SkRect::Make(*rect); - SkAutoTUnref<GrDrawBatch> batch( - GrRectBatchFactory::CreateNonAAFill(color, SkMatrix::I(), scalarRect, - nullptr, nullptr)); - this->drawBatch(pipelineBuilder, drawContext, GrNoClip(), batch); + + GrPaint paint; + paint.setColor4f(GrColor4f::FromGrColor(color)); + paint.setXPFactory(GrPorterDuffXPFactory::Make(SkXfermode::kSrc_Mode)); + + drawContext->drawRect(GrNoClip(), paint, SkMatrix::I(), scalarRect); } else { GrBatch* batch = new GrClearBatch(*rect, color, drawContext->accessRenderTarget()); this->recordBatch(batch, batch->bounds()); |