Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )"
Fixed legacy withColorFilter to call new(er) make method
This reverts commit 1eb81db650d31f50be67b12d60c4f9e7dd08432f.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825073002
TBR=
Review URL: https://codereview.chromium.org/1825073002
diff --git a/samplecode/SampleAll.cpp b/samplecode/SampleAll.cpp
index b8b0ee6..70ecd9f 100644
--- a/samplecode/SampleAll.cpp
+++ b/samplecode/SampleAll.cpp
@@ -384,7 +384,7 @@
SkMaskFilter* embossFilter = SkEmbossMaskFilter::Create(sigma, light);
SkXfermode* xfermode = SkXfermode::Create(SkXfermode::kXor_Mode);
- SkColorFilter* lightingFilter = SkColorMatrixFilter::CreateLightingFilter(
+ auto lightingFilter = SkColorMatrixFilter::MakeLightingFilter(
0xff89bc45, 0xff112233);
canvas->save();
@@ -406,7 +406,7 @@
paint.setStrokeWidth(SkIntToScalar(10));
paint.setStyle(SkPaint::kStroke_Style);
paint.setXfermode(xfermode)->unref();
- paint.setColorFilter(lightingFilter)->unref();
+ paint.setColorFilter(lightingFilter);
canvas->drawLine(start.fX, start.fY, stop.fX, stop.fY, paint); // should not be green
paint.setXfermode(nullptr);
paint.setColorFilter(nullptr);
@@ -543,9 +543,9 @@
#if 01
int index = i % SK_ARRAY_COUNT(gLightingColors);
- paint.setColorFilter(SkColorMatrixFilter::CreateLightingFilter(
+ paint.setColorFilter(SkColorMatrixFilter::MakeLightingFilter(
gLightingColors[index].fMul,
- gLightingColors[index].fAdd))->unref();
+ gLightingColors[index].fAdd));
#endif
canvas->drawText(str.c_str(), str.size(), x, y, paint);
diff --git a/samplecode/SampleColorFilter.cpp b/samplecode/SampleColorFilter.cpp
index 4ee8949..0b8acc3 100644
--- a/samplecode/SampleColorFilter.cpp
+++ b/samplecode/SampleColorFilter.cpp
@@ -184,8 +184,7 @@
for (size_t y = 0; y < SK_ARRAY_COUNT(gColors); y++) {
for (size_t x = 0; x < SK_ARRAY_COUNT(gModes); x++) {
- SkColorFilter* cf = SkColorFilter::CreateModeFilter(gColors[y], gModes[x]);
- SkSafeUnref(paint.setColorFilter(cf));
+ paint.setColorFilter(SkColorFilter::MakeModeFilter(gColors[y], gModes[x]));
canvas->drawBitmap(fBitmap, x * N * 1.25f, y * N * scale, &paint);
}
}
diff --git a/samplecode/SampleFilterFuzz.cpp b/samplecode/SampleFilterFuzz.cpp
index dd0fa40..82934ea 100644
--- a/samplecode/SampleFilterFuzz.cpp
+++ b/samplecode/SampleFilterFuzz.cpp
@@ -298,9 +298,9 @@
return bitmap[R(2)];
}
-static SkData* make_3Dlut(int* cubeDimension, bool invR, bool invG, bool invB) {
+static sk_sp<SkData> make_3Dlut(int* cubeDimension, bool invR, bool invG, bool invB) {
int size = 4 << R(5);
- SkData* data = SkData::NewUninitialized(sizeof(SkColor) * size * size * size);
+ auto data = SkData::MakeUninitialized(sizeof(SkColor) * size * size * size);
SkColor* pixels = (SkColor*)(data->writable_data());
SkAutoTMalloc<uint8_t> lutMemory(size);
SkAutoTMalloc<uint8_t> invLutMemory(size);
@@ -350,20 +350,17 @@
}
}
-static SkColorFilter* make_color_filter() {
- SkColorFilter* colorFilter;
+static sk_sp<SkColorFilter> make_color_filter() {
switch (R(6)) {
case 0: {
SkScalar array[20];
for (int i = 0; i < 20; ++i) {
array[i] = make_scalar();
}
- colorFilter = SkColorMatrixFilter::Create(array);
- break;
+ return SkColorFilter::MakeMatrixFilterRowMajor255(array);
}
case 1:
- colorFilter = SkLumaColorFilter::Create();
- break;
+ return SkLumaColorFilter::Make();
case 2: {
uint8_t tableA[256];
uint8_t tableR[256];
@@ -373,21 +370,17 @@
rand_color_table(tableR);
rand_color_table(tableG);
rand_color_table(tableB);
- colorFilter = SkTableColorFilter::CreateARGB(tableA, tableR, tableG, tableB);
- break;
+ return SkTableColorFilter::MakeARGB(tableA, tableR, tableG, tableB);
}
case 3:
- colorFilter = SkColorFilter::CreateModeFilter(make_color(), make_xfermode());
- break;
+ return SkColorFilter::MakeModeFilter(make_color(), make_xfermode());
case 4:
- colorFilter = SkColorMatrixFilter::CreateLightingFilter(make_color(), make_color());
- break;
+ return SkColorMatrixFilter::MakeLightingFilter(make_color(), make_color());
case 5:
default:
- colorFilter = nullptr;
break;
}
- return colorFilter;
+ return nullptr;
}
static SkPath make_path() {
@@ -538,7 +531,7 @@
rasterizerBuilder.addLayer(paintForRasterizer);
paint.setRasterizer(rasterizerBuilder.detach());
paint.setImageFilter(make_image_filter());
- SkAutoDataUnref data(make_3Dlut(nullptr, make_bool(), make_bool(), make_bool()));
+ sk_sp<SkData> data(make_3Dlut(nullptr, make_bool(), make_bool(), make_bool()));
paint.setTextAlign(make_paint_align());
paint.setTextSize(make_scalar());
paint.setTextScaleX(make_scalar());
@@ -567,16 +560,16 @@
break;
case COLOR:
{
- SkAutoTUnref<SkColorFilter> cf(make_color_filter());
- filter = cf.get() ? SkColorFilterImageFilter::Create(cf, make_image_filter()) : 0;
+ sk_sp<SkColorFilter> cf(make_color_filter());
+ filter = cf ? SkColorFilterImageFilter::Create(cf.get(), make_image_filter()) : 0;
}
break;
case LUT3D:
{
int cubeDimension;
- SkAutoDataUnref lut3D(make_3Dlut(&cubeDimension, (R(2) == 1), (R(2) == 1), (R(2) == 1)));
- SkAutoTUnref<SkColorFilter> cf(SkColorCubeFilter::Create(lut3D, cubeDimension));
- filter = cf.get() ? SkColorFilterImageFilter::Create(cf, make_image_filter()) : 0;
+ sk_sp<SkData> lut3D(make_3Dlut(&cubeDimension, (R(2) == 1), (R(2) == 1), (R(2) == 1)));
+ sk_sp<SkColorFilter> cf(SkColorCubeFilter::Make(lut3D, cubeDimension));
+ filter = cf ? SkColorFilterImageFilter::Create(cf.get(), make_image_filter()) : 0;
}
break;
case BLUR: