Remove code resetting pixelGeometry for filters

The code wasn't executed because we always reset pixelGeometry to
kUnknown_SkPixelGeometry unless kPreserveLCDText_SaveLayerFlag
(which has not been actually used yet) was specified.

The client should be responsible to use
kPreserveLCDText_SaveLayerFlag only when it's appropriate.

Bug: chromium:1076019
Change-Id: Ie2a559445c11cae63db20976cbedee269fca6b24
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/289129
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index c933a88..78a36e4 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1145,16 +1145,6 @@
         return;
     }
 
-    SkPixelGeometry geo = fProps.pixelGeometry();
-    if (!(saveLayerFlags & kPreserveLCDText_SaveLayerFlag)) {
-        geo = kUnknown_SkPixelGeometry;
-    } else if (paint) {
-        // Filters may move pixels, or change colors or opaqueness, which may break LCD text.
-        if (paint->getImageFilter() || paint->getColorFilter()) {
-            geo = kUnknown_SkPixelGeometry;
-        }
-    }
-
     SkBaseDevice* priorDevice = this->getTopDevice();
     if (nullptr == priorDevice) {   // Do we still need this check???
         SkDebugf("Unable to find device for layer.");
@@ -1170,6 +1160,9 @@
     {
         SkASSERT(info.alphaType() != kOpaque_SkAlphaType);
 
+        SkPixelGeometry geo = saveLayerFlags & kPreserveLCDText_SaveLayerFlag
+                                      ? fProps.pixelGeometry()
+                                      : kUnknown_SkPixelGeometry;
         const bool trackCoverage =
                 SkToBool(saveLayerFlags & kMaskAgainstCoverage_EXPERIMENTAL_DONT_USE_SaveLayerFlag);
         const auto createInfo = SkBaseDevice::CreateInfo(info,