Relandx2 "Remove antialiasing control from GrPaint."

Fixes a bad merge.

This reverts commit 073285c0595d46205d1482cc19af2d7d891bfeae.

Change-Id: I5e92339d9b33d3a6dc58b9fcd2a1b3a5684e8f8a
Reviewed-on: https://skia-review.googlesource.com/5774
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/batches/GrDashLinePathRenderer.cpp b/src/gpu/batches/GrDashLinePathRenderer.cpp
index d2a420d..9304885 100644
--- a/src/gpu/batches/GrDashLinePathRenderer.cpp
+++ b/src/gpu/batches/GrDashLinePathRenderer.cpp
@@ -16,6 +16,9 @@
     SkPoint pts[2];
     bool inverted;
     if (args.fShape->style().isDashed() && args.fShape->asLine(pts, &inverted)) {
+        if (args.fAAType == GrAAType::kMixedSamples) {
+            return false;
+        }
         // We should never have an inverse dashed case.
         SkASSERT(!inverted);
         return GrDashingEffect::CanDrawDashLine(pts, args.fShape->style(), *args.fViewMatrix);
@@ -26,16 +29,19 @@
 bool GrDashLinePathRenderer::onDrawPath(const DrawPathArgs& args) {
     GR_AUDIT_TRAIL_AUTO_FRAME(args.fRenderTargetContext->auditTrail(),
                               "GrDashLinePathRenderer::onDrawPath");
-    bool useHWAA = args.fRenderTargetContext->isUnifiedMultisampled();
-    GrDashingEffect::AAMode aaMode;
-    if (useHWAA) {
-        // We ignore args.fAntiAlias here and force anti aliasing when using MSAA. Otherwise,
-        // we can wind up with external edges antialiased and internal edges unantialiased.
-        aaMode = GrDashingEffect::AAMode::kCoverageWithMSAA;
-    } else if (args.fAntiAlias) {
-        aaMode = GrDashingEffect::AAMode::kCoverage;
-    } else {
-        aaMode = GrDashingEffect::AAMode::kNone;
+    GrDashingEffect::AAMode aaMode = GrDashingEffect::AAMode::kNone;
+    switch (args.fAAType) {
+        case GrAAType::kNone:
+            break;
+        case GrAAType::kCoverage:
+        case GrAAType::kMixedSamples:
+            aaMode = GrDashingEffect::AAMode::kCoverage;
+            break;
+        case GrAAType::kMSAA:
+            // In this mode we will use aa between dashes but the outer border uses MSAA. Otherwise,
+            // we can wind up with external edges antialiased and internal edges unantialiased.
+            aaMode = GrDashingEffect::AAMode::kCoverageWithMSAA;
+            break;
     }
     SkPoint pts[2];
     SkAssertResult(args.fShape->asLine(pts, nullptr));
@@ -48,7 +54,7 @@
         return false;
     }
 
-    GrPipelineBuilder pipelineBuilder(*args.fPaint, useHWAA);
+    GrPipelineBuilder pipelineBuilder(*args.fPaint, args.fAAType);
     pipelineBuilder.setUserStencil(args.fUserStencilSettings);
 
     args.fRenderTargetContext->addDrawOp(pipelineBuilder, *args.fClip, batch.get());