| Index: src/gpu/GrAAConvexPathRenderer.cpp
|
| diff --git a/src/gpu/GrAAConvexPathRenderer.cpp b/src/gpu/GrAAConvexPathRenderer.cpp
|
| index f031f7f61b93e572783cbcddb9aa0645474e882a..9873e4297ef07295ec4474165207ef0572da0514 100644
|
| --- a/src/gpu/GrAAConvexPathRenderer.cpp
|
| +++ b/src/gpu/GrAAConvexPathRenderer.cpp
|
| @@ -847,6 +847,10 @@ private:
|
| AAConvexPathBatch(const Geometry& geometry) {
|
| this->initClassID<AAConvexPathBatch>();
|
| fGeoData.push_back(geometry);
|
| +
|
| + // compute bounds
|
| + this->setBounds(geometry.fPath.getBounds());
|
| + geometry.fViewMatrix.mapRect(this->getBounds());
|
| }
|
|
|
| bool onCombineIfPossible(GrBatch* t) override {
|
| @@ -862,6 +866,7 @@ private:
|
| }
|
|
|
| fGeoData.push_back_n(that->geoData()->count(), that->geoData()->begin());
|
| + this->joinBounds(that->bounds());
|
| return true;
|
| }
|
|
|
| @@ -891,19 +896,13 @@ bool GrAAConvexPathRenderer::onDrawPath(GrDrawTarget* target,
|
| return true;
|
| }
|
|
|
| - // We outset our vertices one pixel and add one more pixel for precision.
|
| - // TODO create tighter bounds when we start reordering.
|
| - SkRect devRect = path.getBounds();
|
| - vm.mapRect(&devRect);
|
| - devRect.outset(2, 2);
|
| -
|
| AAConvexPathBatch::Geometry geometry;
|
| geometry.fColor = color;
|
| geometry.fViewMatrix = vm;
|
| geometry.fPath = path;
|
|
|
| SkAutoTUnref<GrBatch> batch(AAConvexPathBatch::Create(geometry));
|
| - target->drawBatch(pipelineBuilder, batch, &devRect);
|
| + target->drawBatch(pipelineBuilder, batch);
|
|
|
| return true;
|
|
|
|
|