Rename SkImageSource to SkImageImageFilter

Also deletes the unnecessary old header file.

Bug: skia:11230
Change-Id: Ie7c3926fe635a37e617e5e1fcac7c05eb576bbf1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/368617
Reviewed-by: Robert Phillips <robertphillips@google.com>
diff --git a/gn/effects_imagefilters.gni b/gn/effects_imagefilters.gni
index 0077f7e..5a90ef4 100644
--- a/gn/effects_imagefilters.gni
+++ b/gn/effects_imagefilters.gni
@@ -19,8 +19,7 @@
   "$_src/effects/imagefilters/SkDisplacementMapImageFilter.cpp",
   "$_src/effects/imagefilters/SkDropShadowImageFilter.cpp",
   "$_src/effects/imagefilters/SkImageFilters.cpp",
-  "$_src/effects/imagefilters/SkImageSource.cpp",
-  "$_src/effects/imagefilters/SkImageSource.h",
+  "$_src/effects/imagefilters/SkImageImageFilter.cpp",
   "$_src/effects/imagefilters/SkLightingImageFilter.cpp",
   "$_src/effects/imagefilters/SkLightingImageFilter.h",
   "$_src/effects/imagefilters/SkMagnifierImageFilter.cpp",
diff --git a/include/effects/SkImageFilters.h b/include/effects/SkImageFilters.h
index cadcfbf..42f3f0e 100644
--- a/include/effects/SkImageFilters.h
+++ b/include/effects/SkImageFilters.h
@@ -199,7 +199,14 @@
      *  @param image    The image that is output by the filter.
      *  @param sampling The sampling to use when drawing the image.
      */
-    static sk_sp<SkImageFilter> Image(sk_sp<SkImage> image, const SkSamplingOptions& sampling);
+    static sk_sp<SkImageFilter> Image(sk_sp<SkImage> image, const SkSamplingOptions& sampling) {
+        if (image) {
+            SkRect r = SkRect::Make(image->bounds());
+            return Image(std::move(image), r, r, sampling);
+        } else {
+            return nullptr;
+        }
+    }
 
     /**
      *  Create a filter that draws the image using Mitchel cubic resampling.
diff --git a/src/core/SkImageFilter_Base.h b/src/core/SkImageFilter_Base.h
index 55b003b..a2ce56a 100644
--- a/src/core/SkImageFilter_Base.h
+++ b/src/core/SkImageFilter_Base.h
@@ -491,5 +491,6 @@
 void SkRegisterComposeImageFilterFlattenable();
 void SkRegisterDisplacementMapImageFilterFlattenable();
 void SkRegisterDropShadowImageFilterFlattenable();
+void SkRegisterImageImageFilterFlattenable();
 
 #endif // SkImageFilter_Base_DEFINED
diff --git a/src/effects/imagefilters/SkImageFilters.cpp b/src/effects/imagefilters/SkImageFilters.cpp
index c215745..56f4262 100644
--- a/src/effects/imagefilters/SkImageFilters.cpp
+++ b/src/effects/imagefilters/SkImageFilters.cpp
@@ -9,7 +9,6 @@
 
 #include "include/core/SkPaint.h"
 
-#include "src/effects/imagefilters/SkImageSource.h"
 #include "src/effects/imagefilters/SkLightingImageFilter.h"
 #include "src/effects/imagefilters/SkMagnifierImageFilter.h"
 #include "src/effects/imagefilters/SkMatrixConvolutionImageFilter.h"
@@ -26,7 +25,6 @@
 
 void SkImageFilters::RegisterFlattenables() {
     SkDilateImageFilter::RegisterFlattenables();
-    SkImageSource::RegisterFlattenables();
     SkLightingImageFilter::RegisterFlattenables();
     SkMagnifierImageFilter::RegisterFlattenables();
     SkMatrixConvolutionImageFilter::RegisterFlattenables();
@@ -39,21 +37,6 @@
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-sk_sp<SkImageFilter> SkImageFilters::Image(
-        sk_sp<SkImage> image, const SkRect& srcRect, const SkRect& dstRect,
-        const SkSamplingOptions& sampling) {
-    return SkImageSource::Make(std::move(image), srcRect, dstRect, sampling);
-}
-
-sk_sp<SkImageFilter> SkImageFilters::Image(sk_sp<SkImage> image,
-                                           const SkSamplingOptions& sampling) {
-    if (image) {
-        auto r = SkRect::MakeIWH(image->width(), image->height());
-        return Image(std::move(image), r, r, sampling);
-    }
-    return nullptr;
-}
-
 sk_sp<SkImageFilter> SkImageFilters::Magnifier(
         const SkRect& srcRect, SkScalar inset, sk_sp<SkImageFilter> input,
         const CropRect& cropRect) {
diff --git a/src/effects/imagefilters/SkImageSource.cpp b/src/effects/imagefilters/SkImageImageFilter.cpp
similarity index 74%
rename from src/effects/imagefilters/SkImageSource.cpp
rename to src/effects/imagefilters/SkImageImageFilter.cpp
index d5eeef2..a6aa38a 100644
--- a/src/effects/imagefilters/SkImageSource.cpp
+++ b/src/effects/imagefilters/SkImageImageFilter.cpp
@@ -5,11 +5,10 @@
  * found in the LICENSE file.
  */
 
-#include "src/effects/imagefilters/SkImageSource.h"
-
 #include "include/core/SkCanvas.h"
 #include "include/core/SkImage.h"
 #include "include/core/SkString.h"
+#include "include/effects/SkImageFilters.h"
 #include "src/core/SkImageFilter_Base.h"
 #include "src/core/SkReadBuffer.h"
 #include "src/core/SkSamplingPriv.h"
@@ -19,10 +18,10 @@
 
 namespace {
 
-class SkImageSourceImpl final : public SkImageFilter_Base {
+class SkImageImageFilter final : public SkImageFilter_Base {
 public:
-    SkImageSourceImpl(sk_sp<SkImage> image, const SkRect& srcRect, const SkRect& dstRect,
-                      const SkSamplingOptions& sampling)
+    SkImageImageFilter(sk_sp<SkImage> image, const SkRect& srcRect, const SkRect& dstRect,
+                       const SkSamplingOptions& sampling)
             : INHERITED(nullptr, 0, nullptr)
             , fImage(std::move(image))
             , fSrcRect(srcRect)
@@ -40,8 +39,8 @@
                                MapDirection, const SkIRect* inputRect) const override;
 
 private:
-    friend void SkImageSource::RegisterFlattenables();
-    SK_FLATTENABLE_HOOKS(SkImageSourceImpl)
+    friend void ::SkRegisterImageImageFilterFlattenable();
+    SK_FLATTENABLE_HOOKS(SkImageImageFilter)
 
     sk_sp<SkImage>    fImage;
     SkRect            fSrcRect, fDstRect;
@@ -52,27 +51,25 @@
 
 } // end namespace
 
-sk_sp<SkImageFilter> SkImageSource::Make(sk_sp<SkImage> image,
-                                         const SkRect& srcRect,
-                                         const SkRect& dstRect,
-                                         const SkSamplingOptions& sampling) {
+sk_sp<SkImageFilter> SkImageFilters::Image(sk_sp<SkImage> image,
+                                           const SkRect& srcRect,
+                                           const SkRect& dstRect,
+                                           const SkSamplingOptions& sampling) {
     if (!image || srcRect.width() <= 0.0f || srcRect.height() <= 0.0f) {
         return nullptr;
     }
 
-    return sk_sp<SkImageFilter>(new SkImageSourceImpl(
+    return sk_sp<SkImageFilter>(new SkImageImageFilter(
             std::move(image), srcRect, dstRect, sampling));
 }
 
-void SkImageSource::RegisterFlattenables() {
-    SK_REGISTER_FLATTENABLE(SkImageSourceImpl);
+void SkRegisterImageImageFilterFlattenable() {
+    SK_REGISTER_FLATTENABLE(SkImageImageFilter);
     // TODO (michaelludwig) - Remove after grace period for SKPs to stop using old name
-    SkFlattenable::Register("SkImageSourceImpl", SkImageSourceImpl::CreateProc);
+    SkFlattenable::Register("SkImageSourceImpl", SkImageImageFilter::CreateProc);
 }
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
-sk_sp<SkFlattenable> SkImageSourceImpl::CreateProc(SkReadBuffer& buffer) {
+sk_sp<SkFlattenable> SkImageImageFilter::CreateProc(SkReadBuffer& buffer) {
     SkSamplingOptions sampling;
     if (buffer.isVersionLT(SkPicturePriv::kImageFilterImageSampling_Version)) {
         sampling = SkSamplingOptions(buffer.checkFilterQuality(),
@@ -90,18 +87,20 @@
         return nullptr;
     }
 
-    return SkImageSource::Make(std::move(image), src, dst, sampling);
+    return SkImageFilters::Image(std::move(image), src, dst, sampling);
 }
 
-void SkImageSourceImpl::flatten(SkWriteBuffer& buffer) const {
+void SkImageImageFilter::flatten(SkWriteBuffer& buffer) const {
     SkSamplingPriv::Write(buffer, fSampling);
     buffer.writeRect(fSrcRect);
     buffer.writeRect(fDstRect);
     buffer.writeImage(fImage.get());
 }
 
-sk_sp<SkSpecialImage> SkImageSourceImpl::onFilterImage(const Context& ctx,
-                                                       SkIPoint* offset) const {
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
+sk_sp<SkSpecialImage> SkImageImageFilter::onFilterImage(const Context& ctx,
+                                                        SkIPoint* offset) const {
     SkRect dstRect;
     ctx.ctm().mapRect(&dstRect, fDstRect);
 
@@ -156,13 +155,13 @@
     return surf->makeImageSnapshot();
 }
 
-SkRect SkImageSourceImpl::computeFastBounds(const SkRect& src) const {
+SkRect SkImageImageFilter::computeFastBounds(const SkRect& src) const {
     return fDstRect;
 }
 
-SkIRect SkImageSourceImpl::onFilterNodeBounds(const SkIRect& src, const SkMatrix& ctm,
-                                              MapDirection direction,
-                                              const SkIRect* inputRect) const {
+SkIRect SkImageImageFilter::onFilterNodeBounds(const SkIRect& src, const SkMatrix& ctm,
+                                               MapDirection direction,
+                                               const SkIRect* inputRect) const {
     if (kReverse_MapDirection == direction) {
         return INHERITED::onFilterNodeBounds(src, ctm, direction, inputRect);
     }
diff --git a/src/effects/imagefilters/SkImageSource.h b/src/effects/imagefilters/SkImageSource.h
deleted file mode 100644
index c2f2d03..0000000
--- a/src/effects/imagefilters/SkImageSource.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright 2015 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#ifndef SkImageSource_DEFINED
-#define SkImageSource_DEFINED
-
-#include "include/core/SkImage.h"
-#include "include/core/SkImageFilter.h"
-
-class SkImageSource {
-public:
-    static sk_sp<SkImageFilter> Make(sk_sp<SkImage> image,
-                                     const SkRect& srcRect,
-                                     const SkRect& dstRect,
-                                     const SkSamplingOptions& sampling);
-
-    static void RegisterFlattenables();
-
-private:
-    SkImageSource() = delete;
-};
-
-#endif
diff --git a/src/ports/SkGlobalInitialization_default.cpp b/src/ports/SkGlobalInitialization_default.cpp
index 3049b10..24f0e35 100644
--- a/src/ports/SkGlobalInitialization_default.cpp
+++ b/src/ports/SkGlobalInitialization_default.cpp
@@ -124,6 +124,7 @@
         SkRegisterComposeImageFilterFlattenable();
         SkRegisterDisplacementMapImageFilterFlattenable();
         SkRegisterDropShadowImageFilterFlattenable();
+        SkRegisterImageImageFilterFlattenable();
         SK_REGISTER_FLATTENABLE(SkLocalMatrixImageFilter);
         SK_REGISTER_FLATTENABLE(SkMatrixImageFilter);
     }