| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "gm.h" | 8 #include "gm.h" |
| 9 | 9 |
| 10 #include "SkColorFilter.h" | 10 #include "SkColorFilter.h" |
| (...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 234 canvas->restore(); | 234 canvas->restore(); |
| 235 | 235 |
| 236 pic = make_sub_picture(pic.get()); | 236 pic = make_sub_picture(pic.get()); |
| 237 | 237 |
| 238 canvas->translate(0, 1.5f * kTriSide / kRoot3); | 238 canvas->translate(0, 1.5f * kTriSide / kRoot3); |
| 239 } | 239 } |
| 240 | 240 |
| 241 return recorder.finishRecordingAsPicture(); | 241 return recorder.finishRecordingAsPicture(); |
| 242 } | 242 } |
| 243 | 243 |
| 244 static SkSurface* create_compat_surface(SkCanvas* canvas, int width, int height)
{ | 244 static sk_sp<SkSurface> create_compat_surface(SkCanvas* canvas, int width, int h
eight) { |
| 245 SkImageInfo info = SkImageInfo::MakeN32Premul(width, height); | 245 SkImageInfo info = SkImageInfo::MakeN32Premul(width, height); |
| 246 | 246 |
| 247 SkSurface* surface = canvas->newSurface(info); | 247 auto surface = canvas->makeSurface(info); |
| 248 if (nullptr == surface) { | 248 if (nullptr == surface) { |
| 249 // picture canvas returns nullptr so fall back to raster | 249 // picture canvas returns nullptr so fall back to raster |
| 250 surface = SkSurface::NewRaster(info); | 250 surface = SkSurface::MakeRaster(info); |
| 251 } | 251 } |
| 252 | |
| 253 return surface; | 252 return surface; |
| 254 } | 253 } |
| 255 | 254 |
| 256 // This class stores the information required to compose all the result | 255 // This class stores the information required to compose all the result |
| 257 // fragments potentially generated by the MultiPictureDraw object | 256 // fragments potentially generated by the MultiPictureDraw object |
| 258 class ComposeStep { | 257 class ComposeStep { |
| 259 public: | 258 public: |
| 260 ComposeStep() : fSurf(nullptr), fX(0.0f), fY(0.0f), fPaint(nullptr) { } | 259 ComposeStep() : fX(0.0f), fY(0.0f), fPaint(nullptr) { } |
| 261 ~ComposeStep() { | 260 ~ComposeStep() { |
| 262 SkSafeUnref(fSurf); | |
| 263 delete fPaint; | 261 delete fPaint; |
| 264 } | 262 } |
| 265 | 263 |
| 266 SkSurface* fSurf; | 264 sk_sp<SkSurface> fSurf; |
| 267 SkScalar fX; | 265 SkScalar fX; |
| 268 SkScalar fY; | 266 SkScalar fY; |
| 269 SkPaint* fPaint; | 267 SkPaint* fPaint; |
| 270 }; | 268 }; |
| 271 | 269 |
| 272 typedef void (*PFContentMtd)(SkCanvas* canvas, const SkPicture* pictures[kNumPic
tures]); | 270 typedef void (*PFContentMtd)(SkCanvas* canvas, const SkPicture* pictures[kNumPic
tures]); |
| 273 | 271 |
| 274 // Just a single picture with no clip | 272 // Just a single picture with no clip |
| 275 static void no_clip(SkCanvas* canvas, const SkPicture* pictures[kNumPictures]) { | 273 static void no_clip(SkCanvas* canvas, const SkPicture* pictures[kNumPictures]) { |
| 276 canvas->drawPicture(pictures[0]); | 274 canvas->drawPicture(pictures[0]); |
| (...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 565 MultiPictureDraw::kTiled_Layout);) | 563 MultiPictureDraw::kTiled_Layout);) |
| 566 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kPathClipMulti_Content, | 564 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kPathClipMulti_Content, |
| 567 MultiPictureDraw::kTiled_Layout);) | 565 MultiPictureDraw::kTiled_Layout);) |
| 568 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kInvPathClipMulti_Conte
nt, | 566 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kInvPathClipMulti_Conte
nt, |
| 569 MultiPictureDraw::kTiled_Layout);) | 567 MultiPictureDraw::kTiled_Layout);) |
| 570 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kSierpinski_Content, | 568 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kSierpinski_Content, |
| 571 MultiPictureDraw::kTiled_Layout);) | 569 MultiPictureDraw::kTiled_Layout);) |
| 572 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kBigLayer_Content, | 570 DEF_GM(return new MultiPictureDraw(MultiPictureDraw::kBigLayer_Content, |
| 573 MultiPictureDraw::kTiled_Layout);) | 571 MultiPictureDraw::kTiled_Layout);) |
| 574 } | 572 } |
| OLD | NEW |