diff options
author | reed <reed@google.com> | 2016-03-29 11:32:50 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-29 11:32:50 -0700 |
commit | cfb6bdf767796c950f89985445738d2d8e7f12b0 (patch) | |
tree | 5b412fe9d767eef852f55316a99eb9776751ccaf /samplecode/SampleXfermodesBlur.cpp | |
parent | 3ebd2760dd34da6f5af23e9c7cb1b6a61e9cea9d (diff) |
switch xfermodes over to sk_sp
waiting on https://codereview.chromium.org/1835163002/
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1832223002
Review URL: https://codereview.chromium.org/1832223002
Diffstat (limited to 'samplecode/SampleXfermodesBlur.cpp')
-rw-r--r-- | samplecode/SampleXfermodesBlur.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/samplecode/SampleXfermodesBlur.cpp b/samplecode/SampleXfermodesBlur.cpp index 52419a06d0..cab13391ed 100644 --- a/samplecode/SampleXfermodesBlur.cpp +++ b/samplecode/SampleXfermodesBlur.cpp @@ -39,7 +39,7 @@ class XfermodesBlurView : public SampleView { SkBitmap fBG; SkBitmap fSrcB, fDstB; - void draw_mode(SkCanvas* canvas, SkXfermode* mode, int alpha, + void draw_mode(SkCanvas* canvas, sk_sp<SkXfermode> mode, int alpha, SkScalar x, SkScalar y) { SkPaint p; SkMaskFilter* mf = SkBlurMaskFilter::Create(kNormal_SkBlurStyle, @@ -58,7 +58,7 @@ class XfermodesBlurView : public SampleView { r.offset(x, y); canvas->drawOval(r, p); - p.setXfermode(mode); + p.setXfermode(std::move(mode)); // draw a square overlapping the circle // in the lower right of the canvas @@ -163,8 +163,6 @@ protected: for (int twice = 0; twice < 2; twice++) { SkScalar x = x0, y = 0; for (size_t i = 0; i < SK_ARRAY_COUNT(gModes); i++) { - SkXfermode* mode = SkXfermode::Create(gModes[i].fMode); - SkAutoUnref aur(mode); SkRect r; r.set(x, y, x+w, y+h); @@ -174,7 +172,8 @@ protected: canvas->drawRect(r, p); canvas->saveLayer(&r, nullptr); - draw_mode(canvas, mode, twice ? 0x88 : 0xFF, r.fLeft, r.fTop); + draw_mode(canvas, SkXfermode::Make(gModes[i].fMode), + twice ? 0x88 : 0xFF, r.fLeft, r.fTop); canvas->restore(); r.inset(-SK_ScalarHalf, -SK_ScalarHalf); |