use Make instead of Create to return a shared shader
Partially updated call sites. Undefine the flag in SkSHader.h to convert the remaining sites.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1772463002
Review URL: https://codereview.chromium.org/1772463002
diff --git a/samplecode/SampleVertices.cpp b/samplecode/SampleVertices.cpp
index 2f2dc02..a8dcd22 100644
--- a/samplecode/SampleVertices.cpp
+++ b/samplecode/SampleVertices.cpp
@@ -25,7 +25,7 @@
#include "SkOSFile.h"
#include "SkStream.h"
-static SkShader* make_shader0(SkIPoint* size) {
+static sk_sp<SkShader> make_shader0(SkIPoint* size) {
SkBitmap bm;
size->set(2, 2);
SkPMColor color0 = SkPreMultiplyARGB(0x80, 0x80, 0xff, 0x80);
@@ -38,21 +38,20 @@
pixels[1] = pixels[3] = color1;
bm.unlockPixels();
- return SkShader::CreateBitmapShader(bm, SkShader::kRepeat_TileMode,
- SkShader::kRepeat_TileMode);
+ return SkShader::MakeBitmapShader(bm, SkShader::kRepeat_TileMode, SkShader::kRepeat_TileMode);
}
-static SkShader* make_shader1(const SkIPoint& size) {
+static sk_sp<SkShader> make_shader1(const SkIPoint& size) {
SkPoint pts[] = { { 0, 0 },
{ SkIntToScalar(size.fX), SkIntToScalar(size.fY) } };
SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE, SK_ColorRED };
- return SkGradientShader::CreateLinear(pts, colors, nullptr,
+ return SkGradientShader::MakeLinear(pts, colors, nullptr,
SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode);
}
class VerticesView : public SampleView {
- SkShader* fShader0;
- SkShader* fShader1;
+ sk_sp<SkShader> fShader0;
+ sk_sp<SkShader> fShader1;
public:
VerticesView() {
@@ -70,11 +69,6 @@
this->setBGColor(SK_ColorGRAY);
}
- virtual ~VerticesView() {
- SkSafeUnref(fShader0);
- SkSafeUnref(fShader1);
- }
-
protected:
// overrides from SkEventSink
bool onQuery(SkEvent* evt) override {