2121#include " src/gpu/glsl/GrGLSLVarying.h"
2222#include " src/gpu/ops/GrMeshDrawOp.h"
2323#include " src/gpu/ops/GrQuadPerEdgeAA.h"
24- #include " src/gpu/ops/GrSimpleMeshDrawOpHelper.h"
2524
2625namespace {
2726
@@ -65,20 +64,21 @@ class FillRectOp final : public GrMeshDrawOp {
6564 GrPaint&& paint,
6665 GrAAType aaType,
6766 DrawQuad* quad,
68- const GrUserStencilSettings* stencilSettings) {
67+ const GrUserStencilSettings* stencilSettings,
68+ Helper::InputFlags inputFlags) {
6969 // Clean up deviations between aaType and edgeAA
7070 GrQuadUtils::ResolveAAType (aaType, quad->fEdgeFlags , quad->fDevice ,
7171 &aaType, &quad->fEdgeFlags );
7272 return Helper::FactoryHelper<FillRectOp>(context, std::move (paint), aaType, quad,
73- stencilSettings);
73+ stencilSettings, inputFlags );
7474 }
7575
7676 // aaType is passed to Helper in the initializer list, so incongruities between aaType and
7777 // edgeFlags must be resolved prior to calling this constructor.
7878 FillRectOp (Helper::MakeArgs args, SkPMColor4f paintColor, GrAAType aaType,
79- DrawQuad* quad, const GrUserStencilSettings* stencil)
79+ DrawQuad* quad, const GrUserStencilSettings* stencil, Helper::InputFlags inputFlags )
8080 : INHERITED(ClassID())
81- , fHelper (args, aaType, stencil)
81+ , fHelper (args, aaType, stencil, inputFlags )
8282 , fQuads (1 , !fHelper .isTrivial()) {
8383 // Set bounds before clipping so we don't have to worry about unioning the bounds of
8484 // the two potential quads (GrQuad::bounds() is perspective-safe).
@@ -425,8 +425,10 @@ std::unique_ptr<GrDrawOp> GrFillRectOp::Make(GrRecordingContext* context,
425425 GrPaint&& paint,
426426 GrAAType aaType,
427427 DrawQuad* quad,
428- const GrUserStencilSettings* stencil) {
429- return FillRectOp::Make (context, std::move (paint), aaType, std::move (quad), stencil);
428+ const GrUserStencilSettings* stencil,
429+ InputFlags inputFlags) {
430+ return FillRectOp::Make (context, std::move (paint), aaType, std::move (quad), stencil,
431+ inputFlags);
430432}
431433
432434std::unique_ptr<GrDrawOp> GrFillRectOp::MakeNonAARect (GrRecordingContext* context,
@@ -435,7 +437,8 @@ std::unique_ptr<GrDrawOp> GrFillRectOp::MakeNonAARect(GrRecordingContext* contex
435437 const SkRect& rect,
436438 const GrUserStencilSettings* stencil) {
437439 DrawQuad quad{GrQuad::MakeFromRect (rect, view), GrQuad (rect), GrQuadAAFlags::kNone };
438- return FillRectOp::Make (context, std::move (paint), GrAAType::kNone , &quad, stencil);
440+ return FillRectOp::Make (context, std::move (paint), GrAAType::kNone , &quad, stencil,
441+ InputFlags::kNone );
439442}
440443
441444std::unique_ptr<GrDrawOp> GrFillRectOp::MakeOp (GrRecordingContext* context,
@@ -454,7 +457,7 @@ std::unique_ptr<GrDrawOp> GrFillRectOp::MakeOp(GrRecordingContext* context,
454457 quads[0 ].fAAFlags };
455458 paint.setColor4f (quads[0 ].fColor );
456459 std::unique_ptr<GrDrawOp> op = FillRectOp::Make (context, std::move (paint), aaType,
457- &quad, stencilSettings);
460+ &quad, stencilSettings, InputFlags:: kNone );
458461 FillRectOp* fillRects = op->cast <FillRectOp>();
459462
460463 *numConsumed = 1 ;
0 commit comments