diff options
author | Mike Reed <reed@google.com> | 2018-04-25 13:04:05 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-04-25 17:34:27 +0000 |
commit | 910ca0fd014ad9263e54e0cfa4199768b6c7fade (patch) | |
tree | 4e8556bb2e6f27868dbc32e173c682ce8dc91e42 /src/core/SkCanvas.cpp | |
parent | f0db23633f754cc3888494ea8d37e5dd8d495bfd (diff) |
Experiment to track coverage in a layer
Bug: skia:
Change-Id: I5ed334f63e64991944394dc8103092a2c6280546
Reviewed-on: https://skia-review.googlesource.com/122000
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Diffstat (limited to 'src/core/SkCanvas.cpp')
-rw-r--r-- | src/core/SkCanvas.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp index 3f2439d538..52644727a6 100644 --- a/src/core/SkCanvas.cpp +++ b/src/core/SkCanvas.cpp @@ -644,7 +644,7 @@ SkCanvas::SkCanvas(const SkBitmap& bitmap, const SkSurfaceProps& props) { inc_canvas(); - sk_sp<SkBaseDevice> device(new SkBitmapDevice(bitmap, fProps)); + sk_sp<SkBaseDevice> device(new SkBitmapDevice(bitmap, fProps, nullptr, nullptr)); this->init(device.get(), kDefault_InitFlags); } @@ -656,7 +656,7 @@ SkCanvas::SkCanvas(const SkBitmap& bitmap, std::unique_ptr<SkRasterHandleAllocat { inc_canvas(); - sk_sp<SkBaseDevice> device(new SkBitmapDevice(bitmap, fProps, hndl)); + sk_sp<SkBaseDevice> device(new SkBitmapDevice(bitmap, fProps, hndl, nullptr)); this->init(device.get(), kDefault_InitFlags); } @@ -1058,8 +1058,10 @@ void SkCanvas::internalSaveLayer(const SaveLayerRec& rec, SaveLayerStrategy stra const bool preserveLCDText = kOpaque_SkAlphaType == info.alphaType() || (saveLayerFlags & kPreserveLCDText_SaveLayerFlag); const SkBaseDevice::TileUsage usage = SkBaseDevice::kNever_TileUsage; + const bool trackCoverage = SkToBool(saveLayerFlags & kMaskAgainstCoverage_EXPERIMENTAL_DONT_USE_SaveLayerFlag); const SkBaseDevice::CreateInfo createInfo = SkBaseDevice::CreateInfo(info, usage, geo, preserveLCDText, + trackCoverage, fAllocator.get()); newDevice.reset(priorDevice->onCreateDevice(createInfo, paint)); if (!newDevice) { |