Update SkBlurImageFilter to sk_sp
TBR=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1852743002
Review URL: https://codereview.chromium.org/1852743002
diff --git a/gm/coloremoji.cpp b/gm/coloremoji.cpp
index 4be8202..5132d71 100644
--- a/gm/coloremoji.cpp
+++ b/gm/coloremoji.cpp
@@ -27,19 +27,19 @@
SkShader::kClamp_TileMode);
}
-static SkImageFilter* make_grayscale(SkImageFilter* input = nullptr) {
+static sk_sp<SkImageFilter> make_grayscale(sk_sp<SkImageFilter> input) {
SkScalar matrix[20];
memset(matrix, 0, 20 * sizeof(SkScalar));
matrix[0] = matrix[5] = matrix[10] = 0.2126f;
matrix[1] = matrix[6] = matrix[11] = 0.7152f;
matrix[2] = matrix[7] = matrix[12] = 0.0722f;
matrix[18] = 1.0f;
- auto filter(SkColorFilter::MakeMatrixFilterRowMajor255(matrix));
- return SkColorFilterImageFilter::Create(filter.get(), input);
+ sk_sp<SkColorFilter> filter(SkColorFilter::MakeMatrixFilterRowMajor255(matrix));
+ return sk_sp<SkImageFilter>(SkColorFilterImageFilter::Create(filter.get(), input.get()));
}
-static SkImageFilter* make_blur(float amount, SkImageFilter* input = nullptr) {
- return SkBlurImageFilter::Create(amount, amount, input);
+static sk_sp<SkImageFilter> make_blur(float amount, sk_sp<SkImageFilter> input) {
+ return SkBlurImageFilter::Make(amount, amount, std::move(input));
}
namespace skiagm {
@@ -98,15 +98,13 @@
}
if (SkToBool(makeBlur) && SkToBool(makeGray)) {
- SkAutoTUnref<SkImageFilter> grayScale(make_grayscale(nullptr));
- SkAutoTUnref<SkImageFilter> blur(make_blur(3.0f, grayScale));
- shaderPaint.setImageFilter(blur);
+ sk_sp<SkImageFilter> grayScale(make_grayscale(nullptr));
+ sk_sp<SkImageFilter> blur(make_blur(3.0f, std::move(grayScale)));
+ shaderPaint.setImageFilter(std::move(blur));
} else if (SkToBool(makeBlur)) {
- SkAutoTUnref<SkImageFilter> blur(make_blur(3.0f, nullptr));
- shaderPaint.setImageFilter(blur);
+ shaderPaint.setImageFilter(make_blur(3.0f, nullptr));
} else if (SkToBool(makeGray)) {
- SkAutoTUnref<SkImageFilter> grayScale(make_grayscale(nullptr));
- shaderPaint.setImageFilter(grayScale);
+ shaderPaint.setImageFilter(make_grayscale(nullptr));
}
shaderPaint.setTextSize(30);
canvas->drawText(text, strlen(text), 380, SkIntToScalar(y_offset),
@@ -160,7 +158,6 @@
//////////////////////////////////////////////////////////////////////////////
-static GM* MyFactory(void*) { return new ColorEmojiGM; }
-static GMRegistry reg(MyFactory);
+DEF_GM(return new ColorEmojiGM;)
}
diff --git a/gm/colorfilterimagefilter.cpp b/gm/colorfilterimagefilter.cpp
index 497757e..38ff0dd 100644
--- a/gm/colorfilterimagefilter.cpp
+++ b/gm/colorfilterimagefilter.cpp
@@ -87,26 +87,29 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
-static SkImageFilter* make_blur(float amount, SkImageFilter* input = nullptr) {
- return SkBlurImageFilter::Create(amount, amount, input);
+static sk_sp<SkImageFilter> make_blur(float amount, sk_sp<SkImageFilter> input) {
+ return SkBlurImageFilter::Make(amount, amount, std::move(input));
}
-static SkImageFilter* make_brightness(float amount, SkImageFilter* input = nullptr) {
- return SkColorFilterImageFilter::Create(cf_make_brightness(amount).get(), input);
+static sk_sp<SkImageFilter> make_brightness(float amount, sk_sp<SkImageFilter> input) {
+ return sk_sp<SkImageFilter>(SkColorFilterImageFilter::Create(cf_make_brightness(amount).get(),
+ input.get()));
}
-static SkImageFilter* make_grayscale(SkImageFilter* input = nullptr) {
- return SkColorFilterImageFilter::Create(cf_make_grayscale().get(), input);
+static sk_sp<SkImageFilter> make_grayscale(sk_sp<SkImageFilter> input) {
+ return sk_sp<SkImageFilter>(SkColorFilterImageFilter::Create(cf_make_grayscale().get(),
+ input.get()));
}
-static SkImageFilter* make_mode_blue(SkImageFilter* input = nullptr) {
- return SkColorFilterImageFilter::Create(cf_make_colorize(SK_ColorBLUE).get(), input);
+static sk_sp<SkImageFilter> make_mode_blue(sk_sp<SkImageFilter> input) {
+ return sk_sp<SkImageFilter>(SkColorFilterImageFilter::Create(cf_make_colorize(SK_ColorBLUE).get(),
+ input.get()));
}
-static void drawClippedRect(SkCanvas* canvas,
- const SkRect& r,
- const SkPaint& paint,
- float outset = 0.0f) {
+static void draw_clipped_rect(SkCanvas* canvas,
+ const SkRect& r,
+ const SkPaint& paint,
+ float outset = 0.0f) {
canvas->save();
SkRect clip(r);
clip.outset(outset, outset);
@@ -121,53 +124,53 @@
paint.setColor(SK_ColorRED);
canvas->save();
for (float brightness = -1.0f; brightness <= 1.0f; brightness += 0.2f) {
- SkAutoTUnref<SkImageFilter> dim(make_brightness(-brightness));
- SkAutoTUnref<SkImageFilter> bright(make_brightness(brightness, dim));
- paint.setImageFilter(bright);
- drawClippedRect(canvas, r, paint);
+ sk_sp<SkImageFilter> dim(make_brightness(-brightness, nullptr));
+ sk_sp<SkImageFilter> bright(make_brightness(brightness, std::move(dim)));
+ paint.setImageFilter(std::move(bright));
+ draw_clipped_rect(canvas, r, paint);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
canvas->restore();
canvas->translate(0, FILTER_HEIGHT + MARGIN);
{
- SkAutoTUnref<SkImageFilter> brightness(make_brightness(0.9f));
- SkAutoTUnref<SkImageFilter> grayscale(make_grayscale(brightness));
- paint.setImageFilter(grayscale);
- drawClippedRect(canvas, r, paint);
+ sk_sp<SkImageFilter> brightness(make_brightness(0.9f, nullptr));
+ sk_sp<SkImageFilter> grayscale(make_grayscale(std::move(brightness)));
+ paint.setImageFilter(std::move(grayscale));
+ draw_clipped_rect(canvas, r, paint);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
{
- SkAutoTUnref<SkImageFilter> grayscale(make_grayscale());
- SkAutoTUnref<SkImageFilter> brightness(make_brightness(0.9f, grayscale));
- paint.setImageFilter(brightness);
- drawClippedRect(canvas, r, paint);
+ sk_sp<SkImageFilter> grayscale(make_grayscale(nullptr));
+ sk_sp<SkImageFilter> brightness(make_brightness(0.9f, std::move(grayscale)));
+ paint.setImageFilter(std::move(brightness));
+ draw_clipped_rect(canvas, r, paint);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
{
- SkAutoTUnref<SkImageFilter> blue(make_mode_blue());
- SkAutoTUnref<SkImageFilter> brightness(make_brightness(1.0f, blue));
- paint.setImageFilter(brightness);
- drawClippedRect(canvas, r, paint);
+ sk_sp<SkImageFilter> blue(make_mode_blue(nullptr));
+ sk_sp<SkImageFilter> brightness(make_brightness(1.0f, std::move(blue)));
+ paint.setImageFilter(std::move(brightness));
+ draw_clipped_rect(canvas, r, paint);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
{
- SkAutoTUnref<SkImageFilter> brightness(make_brightness(1.0f));
- SkAutoTUnref<SkImageFilter> blue(make_mode_blue(brightness));
- paint.setImageFilter(blue);
- drawClippedRect(canvas, r, paint);
+ sk_sp<SkImageFilter> brightness(make_brightness(1.0f, nullptr));
+ sk_sp<SkImageFilter> blue(make_mode_blue(std::move(brightness)));
+ paint.setImageFilter(std::move(blue));
+ draw_clipped_rect(canvas, r, paint);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
{
- SkAutoTUnref<SkImageFilter> blur(make_blur(3.0f));
- SkAutoTUnref<SkImageFilter> brightness(make_brightness(0.5f, blur));
- paint.setImageFilter(brightness);
- drawClippedRect(canvas, r, paint, 3);
+ sk_sp<SkImageFilter> blur(make_blur(3.0f, nullptr));
+ sk_sp<SkImageFilter> brightness(make_brightness(0.5f, std::move(blur)));
+ paint.setImageFilter(std::move(brightness));
+ draw_clipped_rect(canvas, r, paint, 3);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
{
- SkAutoTUnref<SkImageFilter> blue(make_mode_blue());
- paint.setImageFilter(blue.get());
- drawClippedRect(canvas, r, paint, 5);
+ sk_sp<SkImageFilter> blue(make_mode_blue(nullptr));
+ paint.setImageFilter(std::move(blue));
+ draw_clipped_rect(canvas, r, paint, 5);
canvas->translate(FILTER_WIDTH + MARGIN, 0);
}
}
@@ -177,9 +180,9 @@
SkColorMatrix cm;
cm.setSaturation(0.0f);
auto cf(SkColorFilter::MakeMatrixFilterRowMajor255(cm.fMat));
- SkAutoTUnref<SkImageFilter> imf(SkColorFilterImageFilter::Create(cf.get()));
+ sk_sp<SkImageFilter> imf(SkColorFilterImageFilter::Create(cf.get()));
SkPaint p;
- p.setImageFilter(imf);
+ p.setImageFilter(std::move(imf));
canvas->saveLayer(NULL, &p);
canvas->clear(SK_ColorRED);
}
diff --git a/gm/complexclip_blur_tiled.cpp b/gm/complexclip_blur_tiled.cpp
index 9413e64..979c7e7 100644
--- a/gm/complexclip_blur_tiled.cpp
+++ b/gm/complexclip_blur_tiled.cpp
@@ -31,22 +31,21 @@
void onDraw(SkCanvas* canvas) override {
SkPaint blurPaint;
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(5.0f, 5.0f));
- blurPaint.setImageFilter(blur);
- const SkScalar tile_size = SkIntToScalar(128);
+ blurPaint.setImageFilter(SkBlurImageFilter::Make(5.0f, 5.0f, nullptr));
+ const SkScalar tileSize = SkIntToScalar(128);
SkRect bounds;
if (!canvas->getClipBounds(&bounds)) {
bounds.setEmpty();
}
- int ts = SkScalarCeilToInt(tile_size);
+ int ts = SkScalarCeilToInt(tileSize);
SkImageInfo info = SkImageInfo::MakeN32Premul(ts, ts);
auto tileSurface(canvas->makeSurface(info));
if (!tileSurface) {
tileSurface = SkSurface::MakeRaster(info);
}
SkCanvas* tileCanvas = tileSurface->getCanvas();
- for (SkScalar y = bounds.top(); y < bounds.bottom(); y += tile_size) {
- for (SkScalar x = bounds.left(); x < bounds.right(); x += tile_size) {
+ for (SkScalar y = bounds.top(); y < bounds.bottom(); y += tileSize) {
+ for (SkScalar x = bounds.left(); x < bounds.right(); x += tileSize) {
tileCanvas->save();
tileCanvas->clear(0);
tileCanvas->translate(-x, -y);
@@ -69,7 +68,6 @@
//////////////////////////////////////////////////////////////////////////////
-static GM* MyFactory1(void*) { return new ComplexClipBlurTiledGM(); }
-static GMRegistry reg1(MyFactory1);
+DEF_GM(return new ComplexClipBlurTiledGM;)
}
diff --git a/gm/filterfastbounds.cpp b/gm/filterfastbounds.cpp
index 9d07095..a254ec9 100644
--- a/gm/filterfastbounds.cpp
+++ b/gm/filterfastbounds.cpp
@@ -82,79 +82,68 @@
draw_rect, draw_oval, draw_rrect, draw_drrect, draw_path, draw_points, draw_bitmap
};
-static void add_paint(SkImageFilter* filter, SkTArray<SkPaint>* paints) {
+static void add_paint(SkTArray<SkPaint>* paints, sk_sp<SkImageFilter> filter) {
SkPaint& p = paints->push_back();
- p.setImageFilter(filter);
+ p.setImageFilter(std::move(filter));
SkASSERT(p.canComputeFastBounds());
}
// Create a selection of imagefilter-based paints to test
-static void create_paints(SkImageFilter* source, SkTArray<SkPaint>* paints) {
+static void create_paints(SkTArray<SkPaint>* paints, sk_sp<SkImageFilter> source) {
{
SkMatrix scale;
scale.setScale(2.0f, 2.0f);
- SkAutoTUnref<SkImageFilter> scaleMIF(
- SkImageFilter::CreateMatrixFilter(scale, kLow_SkFilterQuality, source));
+ sk_sp<SkImageFilter> scaleMIF(
+ SkImageFilter::CreateMatrixFilter(scale, kLow_SkFilterQuality, source.get()));
- add_paint(scaleMIF, paints);
+ add_paint(paints, std::move(scaleMIF));
}
{
SkMatrix rot;
rot.setRotate(-33.3f);
- SkAutoTUnref<SkImageFilter> rotMIF(
- SkImageFilter::CreateMatrixFilter(rot, kLow_SkFilterQuality, source));
+ sk_sp<SkImageFilter> rotMIF(
+ SkImageFilter::CreateMatrixFilter(rot, kLow_SkFilterQuality, source.get()));
- add_paint(rotMIF, paints);
+ add_paint(paints, std::move(rotMIF));
}
{
SkRect src = SkRect::MakeXYWH(20, 20, 10, 10);
SkRect dst = SkRect::MakeXYWH(30, 30, 30, 30);
- SkAutoTUnref<SkImageFilter> tileIF(
- SkTileImageFilter::Create(src, dst, nullptr));
+ sk_sp<SkImageFilter> tileIF(SkTileImageFilter::Create(src, dst, nullptr));
- add_paint(tileIF, paints);
+ add_paint(paints, std::move(tileIF));
}
{
static const SkDropShadowImageFilter::ShadowMode kBoth =
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode;
- SkAutoTUnref<SkImageFilter> dsif(
+ sk_sp<SkImageFilter> dsif(
SkDropShadowImageFilter::Create(10.0f, 10.0f,
3.0f, 3.0f,
SK_ColorRED, kBoth,
- source, nullptr));
+ source.get(), nullptr));
- add_paint(dsif, paints);
+ add_paint(paints, std::move(dsif));
}
{
- SkAutoTUnref<SkImageFilter> dsif(
+ sk_sp<SkImageFilter> dsif(
SkDropShadowImageFilter::Create(27.0f, 27.0f,
3.0f, 3.0f,
SK_ColorRED,
SkDropShadowImageFilter::kDrawShadowOnly_ShadowMode,
- source, nullptr));
+ source.get(), nullptr));
- add_paint(dsif, paints);
+ add_paint(paints, std::move(dsif));
}
- {
- SkAutoTUnref<SkImageFilter> bif(SkBlurImageFilter::Create(3, 3, source));
-
- add_paint(bif, paints);
- }
-
- {
- sk_sp<SkImageFilter> oif(SkOffsetImageFilter::Make(15, 15,
- sk_ref_sp<SkImageFilter>(source)));
-
- add_paint(oif.get(), paints);
- }
+ add_paint(paints, SkBlurImageFilter::Make(3, 3, source));
+ add_paint(paints, SkOffsetImageFilter::Make(15, 15, source));
}
// This GM visualizes the fast bounds for various combinations of geometry
@@ -243,7 +232,7 @@
//-----------
// Normal paints (no source)
SkTArray<SkPaint> paints;
- create_paints(nullptr, &paints);
+ create_paints(&paints, nullptr);
//-----------
// Paints with a PictureImageFilter as a source
@@ -257,10 +246,8 @@
pic = rec.finishRecordingAsPicture();
}
- sk_sp<SkImageFilter> pif(SkPictureImageFilter::Make(pic));
-
SkTArray<SkPaint> pifPaints;
- create_paints(pif.get(), &pifPaints);
+ create_paints(&pifPaints, SkPictureImageFilter::Make(pic));
//-----------
// Paints with a SkImageSource as a source
@@ -278,9 +265,8 @@
sk_sp<SkImage> image(surface->makeImageSnapshot());
sk_sp<SkImageFilter> imageSource(SkImageSource::Make(std::move(image)));
-
SkTArray<SkPaint> bmsPaints;
- create_paints(imageSource.get(), &bmsPaints);
+ create_paints(&bmsPaints, std::move(imageSource));
//-----------
SkASSERT(paints.count() == kNumVertTiles);
diff --git a/gm/imageblur.cpp b/gm/imageblur.cpp
index 22ea408..6a27c65 100644
--- a/gm/imageblur.cpp
+++ b/gm/imageblur.cpp
@@ -14,8 +14,7 @@
void imageblurgm_draw(SkScalar fSigmaX, SkScalar fSigmaY, SkCanvas* canvas) {
SkPaint paint;
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(fSigmaX, fSigmaY));
- paint.setImageFilter(blur);
+ paint.setImageFilter(SkBlurImageFilter::Make(fSigmaX, fSigmaY, nullptr));
canvas->saveLayer(nullptr, &paint);
const char* str = "The quick brown fox jumped over the lazy dog.";
diff --git a/gm/imageblur2.cpp b/gm/imageblur2.cpp
index 2b95c02..c6835d8 100644
--- a/gm/imageblur2.cpp
+++ b/gm/imageblur2.cpp
@@ -58,8 +58,7 @@
SkScalar sigmaY = kBlurSigmas[y];
SkPaint paint;
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(sigmaX, sigmaY));
- paint.setImageFilter(blur);
+ paint.setImageFilter(SkBlurImageFilter::Make(sigmaX, sigmaY, nullptr));
canvas->saveLayer(nullptr, &paint);
SkRandom rand;
@@ -89,7 +88,6 @@
//////////////////////////////////////////////////////////////////////////////
-static GM* MyFactory(void*) { return new BlurImageFilter; }
-static GMRegistry reg(MyFactory);
+DEF_GM(return new BlurImageFilter;)
}
diff --git a/gm/imageblurtiled.cpp b/gm/imageblurtiled.cpp
index 9f8bfe5..415fa73 100644
--- a/gm/imageblurtiled.cpp
+++ b/gm/imageblurtiled.cpp
@@ -21,27 +21,26 @@
}
protected:
- virtual SkString onShortName() {
+ SkString onShortName() override {
return SkString("imageblurtiled");
}
- virtual SkISize onISize() {
+ SkISize onISize() override {
return SkISize::Make(WIDTH, HEIGHT);
}
- virtual void onDraw(SkCanvas* canvas) {
+ void onDraw(SkCanvas* canvas) override {
SkPaint paint;
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(fSigmaX, fSigmaY));
- paint.setImageFilter(blur);
- const SkScalar tile_size = SkIntToScalar(128);
+ paint.setImageFilter(SkBlurImageFilter::Make(fSigmaX, fSigmaY, nullptr));
+ const SkScalar tileSize = SkIntToScalar(128);
SkRect bounds;
if (!canvas->getClipBounds(&bounds)) {
bounds.setEmpty();
}
- for (SkScalar y = bounds.top(); y < bounds.bottom(); y += tile_size) {
- for (SkScalar x = bounds.left(); x < bounds.right(); x += tile_size) {
+ for (SkScalar y = bounds.top(); y < bounds.bottom(); y += tileSize) {
+ for (SkScalar x = bounds.left(); x < bounds.right(); x += tileSize) {
canvas->save();
- canvas->clipRect(SkRect::MakeXYWH(x, y, tile_size, tile_size));
+ canvas->clipRect(SkRect::MakeXYWH(x, y, tileSize, tileSize));
canvas->saveLayer(nullptr, &paint);
const char* str[] = {
"The quick",
@@ -74,7 +73,6 @@
//////////////////////////////////////////////////////////////////////////////
-static GM* MyFactory1(void*) { return new ImageBlurTiledGM(3.0f, 3.0f); }
-static GMRegistry reg1(MyFactory1);
+DEF_GM(return new ImageBlurTiledGM(3.0f, 3.0f);)
}
diff --git a/gm/imagefilters.cpp b/gm/imagefilters.cpp
index ab9ddf4..10072c8 100644
--- a/gm/imagefilters.cpp
+++ b/gm/imagefilters.cpp
@@ -87,8 +87,7 @@
canvas->translate(10, 10);
for (SkScalar sigma = 8; sigma <= 128; sigma *= 2) {
SkPaint paint;
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(sigma, sigma));
- paint.setImageFilter(blur);
+ paint.setImageFilter(SkBlurImageFilter::Make(sigma, sigma, nullptr));
canvas->save();
// we outset the clip by 1, to fall out of the fast-case in drawImage
@@ -143,7 +142,7 @@
auto cf(SkColorFilter::MakeMatrixFilterRowMajor255(cm.fMat));
const SkScalar kernel[] = { 4, 0, 4, 0, -15, 0, 4, 0, 4 };
SkImageFilter* filters[] = {
- SkBlurImageFilter::Create(10, 10),
+ SkBlurImageFilter::Make(10, 10, nullptr).release(),
SkDilateImageFilter::Create(8, 8),
SkMatrixConvolutionImageFilter::Create({ 3, 3 }, kernel, 1, 0, { 0, 0 },
SkMatrixConvolutionImageFilter::kClampToBlack_TileMode,
diff --git a/gm/imagefiltersbase.cpp b/gm/imagefiltersbase.cpp
index 3c1cf09..d2367e2 100644
--- a/gm/imagefiltersbase.cpp
+++ b/gm/imagefiltersbase.cpp
@@ -198,7 +198,7 @@
IdentityImageFilter::Create(),
FailImageFilter::Create(),
SkColorFilterImageFilter::Create(cf.get()),
- SkBlurImageFilter::Create(12.0f, 0.0f),
+ SkBlurImageFilter::Make(12.0f, 0.0f, nullptr).release(),
SkDropShadowImageFilter::Create(10.0f, 5.0f, 3.0f, 3.0f, SK_ColorBLUE,
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode),
};
@@ -308,7 +308,7 @@
ImageFiltersText_IF() : ImageFiltersTextBaseGM("image") {}
void installFilter(SkPaint* paint) override {
- paint->setImageFilter(SkBlurImageFilter::Create(1.5f, 1.5f))->unref();
+ paint->setImageFilter(SkBlurImageFilter::Make(1.5f, 1.5f, nullptr));
}
};
DEF_GM( return new ImageFiltersText_IF; )
diff --git a/gm/imagefiltersclipped.cpp b/gm/imagefiltersclipped.cpp
index 31f8ad2..85c5438 100644
--- a/gm/imagefiltersclipped.cpp
+++ b/gm/imagefiltersclipped.cpp
@@ -94,7 +94,7 @@
SkPoint3 pointLocation = SkPoint3::Make(32, 32, SkIntToScalar(10));
SkImageFilter* filters[] = {
- SkBlurImageFilter::Create(SkIntToScalar(12), SkIntToScalar(12)),
+ SkBlurImageFilter::Make(SkIntToScalar(12), SkIntToScalar(12), nullptr).release(),
SkDropShadowImageFilter::Create(SkIntToScalar(10), SkIntToScalar(10),
SkIntToScalar(3), SkIntToScalar(3), SK_ColorGREEN,
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode),
diff --git a/gm/imagefilterscropexpand.cpp b/gm/imagefilterscropexpand.cpp
index 82df81c..f1a1323 100644
--- a/gm/imagefilterscropexpand.cpp
+++ b/gm/imagefilterscropexpand.cpp
@@ -80,15 +80,13 @@
noopCropped.get(),
&bigRect)));
- Draw(canvas, checkerboard, rect,
- sk_sp<SkImageFilter>(SkBlurImageFilter::Create(0.3f, 0.3f,
- noopCropped.get(),
- &bigRect)));
+ Draw(canvas, checkerboard, rect, SkBlurImageFilter::Make(0.3f, 0.3f,
+ noopCropped,
+ &bigRect));
- Draw(canvas, checkerboard, rect,
- sk_sp<SkImageFilter>(SkBlurImageFilter::Create(8.0f, 8.0f,
- noopCropped.get(),
- &bigRect)));
+ Draw(canvas, checkerboard, rect, SkBlurImageFilter::Make(8.0f, 8.0f,
+ noopCropped,
+ &bigRect));
Draw(canvas, checkerboard, rect,
sk_sp<SkImageFilter>(SkDilateImageFilter::Create(2, 2,
diff --git a/gm/imagefilterscropped.cpp b/gm/imagefilterscropped.cpp
index 9c8705c..1e880fe 100644
--- a/gm/imagefilterscropped.cpp
+++ b/gm/imagefilterscropped.cpp
@@ -131,18 +131,18 @@
SkImageFilter* filters[] = {
nullptr,
SkColorFilterImageFilter::Create(cf.get(), nullptr, &cropRect),
- SkBlurImageFilter::Create(0.0f, 0.0f, nullptr, &cropRect),
- SkBlurImageFilter::Create(1.0f, 1.0f, nullptr, &cropRect),
- SkBlurImageFilter::Create(8.0f, 0.0f, nullptr, &cropRect),
- SkBlurImageFilter::Create(0.0f, 8.0f, nullptr, &cropRect),
- SkBlurImageFilter::Create(8.0f, 8.0f, nullptr, &cropRect),
+ SkBlurImageFilter::Make(0.0f, 0.0f, nullptr, &cropRect).release(),
+ SkBlurImageFilter::Make(1.0f, 1.0f, nullptr, &cropRect).release(),
+ SkBlurImageFilter::Make(8.0f, 0.0f, nullptr, &cropRect).release(),
+ SkBlurImageFilter::Make(0.0f, 8.0f, nullptr, &cropRect).release(),
+ SkBlurImageFilter::Make(8.0f, 8.0f, nullptr, &cropRect).release(),
SkErodeImageFilter::Create(1, 1, nullptr, &cropRect),
SkErodeImageFilter::Create(8, 0, erodeY, &cropRect),
SkErodeImageFilter::Create(0, 8, erodeX, &cropRect),
SkErodeImageFilter::Create(8, 8, nullptr, &cropRect),
SkMergeImageFilter::Make(nullptr, std::move(cfOffset),
SkXfermode::kSrcOver_Mode, &cropRect).release(),
- SkBlurImageFilter::Create(8.0f, 8.0f, nullptr, &bogusRect),
+ SkBlurImageFilter::Make(8.0f, 8.0f, nullptr, &bogusRect).release(),
SkColorFilterImageFilter::Create(cf.get(), nullptr, &bogusRect),
};
diff --git a/gm/imagefiltersgraph.cpp b/gm/imagefiltersgraph.cpp
index c0c652b..b7402ee 100644
--- a/gm/imagefiltersgraph.cpp
+++ b/gm/imagefiltersgraph.cpp
@@ -121,7 +121,7 @@
sk_sp<SkImageFilter> bitmapSource(SkImageSource::Make(fImage));
sk_sp<SkColorFilter> cf(SkColorFilter::MakeModeFilter(SK_ColorRED,
SkXfermode::kSrcIn_Mode));
- sk_sp<SkImageFilter> blur(SkBlurImageFilter::Create(4.0f, 4.0f, bitmapSource.get()));
+ sk_sp<SkImageFilter> blur(SkBlurImageFilter::Make(4.0f, 4.0f, std::move(bitmapSource)));
sk_sp<SkImageFilter> erode(SkErodeImageFilter::Create(4, 4, blur.get()));
sk_sp<SkImageFilter> color(SkColorFilterImageFilter::Create(cf.get(), erode.get()));
sk_sp<SkImageFilter> merge(SkMergeImageFilter::Make(blur, color));
@@ -167,13 +167,14 @@
canvas->translate(SkIntToScalar(100), 0);
}
{
- SkAutoTUnref<SkImageFilter> blur(SkBlurImageFilter::Create(
- SkIntToScalar(10), SkIntToScalar(10)));
+ sk_sp<SkImageFilter> blur(SkBlurImageFilter::Make(SkIntToScalar(10),
+ SkIntToScalar(10),
+ nullptr));
SkImageFilter::CropRect cropRect(SkRect::MakeWH(SkIntToScalar(95), SkIntToScalar(100)));
SkPaint paint;
paint.setImageFilter(
- SkXfermodeImageFilter::Make(SkXfermode::Make(SkXfermode::kSrcIn_Mode), blur,
+ SkXfermodeImageFilter::Make(SkXfermode::Make(SkXfermode::kSrcIn_Mode), blur.get(),
nullptr, &cropRect));
DrawClippedImage(canvas, fImage.get(), paint);
canvas->translate(SkIntToScalar(100), 0);
diff --git a/gm/imagefiltersscaled.cpp b/gm/imagefiltersscaled.cpp
index 61eb469..56a1484 100644
--- a/gm/imagefiltersscaled.cpp
+++ b/gm/imagefiltersscaled.cpp
@@ -73,7 +73,7 @@
resizeMatrix.setScale(RESIZE_FACTOR, RESIZE_FACTOR);
SkImageFilter* filters[] = {
- SkBlurImageFilter::Create(SkIntToScalar(4), SkIntToScalar(4)),
+ SkBlurImageFilter::Make(SkIntToScalar(4), SkIntToScalar(4), nullptr).release(),
SkDropShadowImageFilter::Create(SkIntToScalar(5), SkIntToScalar(10),
SkIntToScalar(3), SkIntToScalar(3), SK_ColorYELLOW,
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode),
diff --git a/gm/imagefiltersstroked.cpp b/gm/imagefiltersstroked.cpp
index 9275990..81f8145 100644
--- a/gm/imagefiltersstroked.cpp
+++ b/gm/imagefiltersstroked.cpp
@@ -58,7 +58,7 @@
resizeMatrix.setScale(RESIZE_FACTOR_X, RESIZE_FACTOR_Y);
SkImageFilter* filters[] = {
- SkBlurImageFilter::Create(5, 5),
+ SkBlurImageFilter::Make(5, 5, nullptr).release(),
SkDropShadowImageFilter::Create(10, 10, 3, 3, SK_ColorGREEN,
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode),
SkOffsetImageFilter::Make(-16, 32, nullptr).release(),
diff --git a/gm/imagefilterstransformed.cpp b/gm/imagefilterstransformed.cpp
index a9b1863..687e458 100644
--- a/gm/imagefilterstransformed.cpp
+++ b/gm/imagefilterstransformed.cpp
@@ -66,7 +66,7 @@
sk_sp<SkImageFilter> gradient(SkImageSource::Make(fGradientCircle));
sk_sp<SkImageFilter> checkerboard(SkImageSource::Make(fCheckerboard));
SkImageFilter* filters[] = {
- SkBlurImageFilter::Create(12, 0),
+ SkBlurImageFilter::Make(12, 0, nullptr).release(),
SkDropShadowImageFilter::Create(0, 15, 8, 0, SK_ColorGREEN,
SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode),
SkDisplacementMapEffect::Create(SkDisplacementMapEffect::kR_ChannelSelectorType,
diff --git a/gm/localmatriximagefilter.cpp b/gm/localmatriximagefilter.cpp
index 5c49671..baa44b9 100644
--- a/gm/localmatriximagefilter.cpp
+++ b/gm/localmatriximagefilter.cpp
@@ -65,7 +65,7 @@
sk_sp<SkImage> image0(make_image(canvas));
const ImageFilterFactory factories[] = {
- IFCCast([]{ return SkBlurImageFilter::Create(8, 8); }),
+ IFCCast([]{ return SkBlurImageFilter::Make(8, 8, nullptr).release(); }),
IFCCast([]{ return SkDilateImageFilter::Create(8, 8); }),
IFCCast([]{ return SkErodeImageFilter::Create(8, 8); }),
IFCCast([]{ return SkOffsetImageFilter::Make(8, 8, nullptr).release(); }),
diff --git a/gm/spritebitmap.cpp b/gm/spritebitmap.cpp
index 6c438fa..38fe9f4 100644
--- a/gm/spritebitmap.cpp
+++ b/gm/spritebitmap.cpp
@@ -23,7 +23,7 @@
}
static void draw_1_bitmap(SkCanvas* canvas, const SkBitmap& bm, bool doClip,
- int dx, int dy, SkImageFilter* filter = nullptr) {
+ int dx, int dy, sk_sp<SkImageFilter> filter) {
SkAutoCanvasRestore acr(canvas, true);
SkPaint paint;
@@ -32,7 +32,7 @@
SkIntToScalar(bm.width()),
SkIntToScalar(bm.height()));
- paint.setImageFilter(filter);
+ paint.setImageFilter(std::move(filter));
clipR.inset(5, 5);
canvas->translate(SkIntToScalar(bm.width() + 20), 0);
@@ -72,13 +72,13 @@
int dy = 10;
SkScalar sigma = 8;
- SkAutoTUnref<SkImageFilter> filter(SkBlurImageFilter::Create(sigma, sigma));
+ sk_sp<SkImageFilter> filter(SkBlurImageFilter::Make(sigma, sigma, nullptr));
- draw_1_bitmap(canvas, bm, false, dx, dy);
+ draw_1_bitmap(canvas, bm, false, dx, dy, nullptr);
dy += bm.height() + 20;
draw_1_bitmap(canvas, bm, false, dx, dy, filter);
dy += bm.height() + 20;
- draw_1_bitmap(canvas, bm, true, dx, dy);
+ draw_1_bitmap(canvas, bm, true, dx, dy, nullptr);
dy += bm.height() + 20;
draw_1_bitmap(canvas, bm, true, dx, dy, filter);
}
diff --git a/gm/testimagefilters.cpp b/gm/testimagefilters.cpp
index 9c2a5a9..ab27771 100644
--- a/gm/testimagefilters.cpp
+++ b/gm/testimagefilters.cpp
@@ -35,7 +35,7 @@
}
static sk_sp<SkImageFilter> make3() {
- return sk_sp<SkImageFilter>(SkBlurImageFilter::Create(8, 0));
+ return SkBlurImageFilter::Make(8, 0, nullptr);
}
static sk_sp<SkImageFilter> make4() {