Chromium Code Reviews| Index: src/core/SkRecorder.cpp |
| diff --git a/src/core/SkRecorder.cpp b/src/core/SkRecorder.cpp |
| index 1af328afd2949a7fc3c084d995181365f63f9aeb..e5e6efe63b26cc308f3c67a925359e46363ebb6d 100644 |
| --- a/src/core/SkRecorder.cpp |
| +++ b/src/core/SkRecorder.cpp |
| @@ -10,9 +10,19 @@ |
| #include "SkPatchUtils.h" |
| #include "SkPicture.h" |
|
robertphillips
2014/11/18 20:51:53
Add one of these to SkRect?
reed1
2014/11/18 22:05:30
Love to, but I have to clean up SkRect.h first, wh
reed1
2014/11/19 14:49:16
Done.
|
| -// SkCanvas will fail in mysterious ways if it doesn't know the real width and height. |
| +static SkIRect round_out(const SkRect& r) { |
| + SkIRect ir; |
| + r.roundOut(&ir); |
| + return ir; |
| +} |
| + |
| SkRecorder::SkRecorder(SkRecord* record, int width, int height) |
| - : SkCanvas(width, height, SkCanvas::kConservativeRasterClip_InitFlag) |
| + : SkCanvas(SkIRect::MakeWH(width, height), SkCanvas::kConservativeRasterClip_InitFlag) |
| + , fRecord(record) |
| + , fSaveLayerCount(0) {} |
| + |
| +SkRecorder::SkRecorder(SkRecord* record, const SkRect& bounds) |
| + : SkCanvas(round_out(bounds), SkCanvas::kConservativeRasterClip_InitFlag) |
| , fRecord(record) |
| , fSaveLayerCount(0) {} |