From cfb6bdf767796c950f89985445738d2d8e7f12b0 Mon Sep 17 00:00:00 2001 From: reed Date: Tue, 29 Mar 2016 11:32:50 -0700 Subject: 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 --- samplecode/SampleXfermodesBlur.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'samplecode/SampleXfermodesBlur.cpp') 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 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); -- cgit v1.2.3