diff options
author | 2014-12-22 16:12:38 -0800 | |
---|---|---|
committer | 2014-12-22 16:12:38 -0800 | |
commit | 0acf1b4b3645772d220c720313821bac389751b5 (patch) | |
tree | 80d0bf7eb9a71df24f3947659c29716f0693776b /src | |
parent | 8fc6c2d82c1f30ff82274334c01f0799def6a609 (diff) |
add private flag for sprite-as-bitmap
BUG=skia:3272
Review URL: https://codereview.chromium.org/806853005
Diffstat (limited to 'src')
-rw-r--r-- | src/core/SkCanvas.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp index c7fb2dd47f..09b9783cb9 100644 --- a/src/core/SkCanvas.cpp +++ b/src/core/SkCanvas.cpp @@ -42,6 +42,14 @@ bool SkCanvas::Internal_Private_GetIgnoreSaveLayerBounds() { return gIgnoreSaveLayerBounds; } +static bool gTreatSpriteAsBitmap; +void SkCanvas::Internal_Private_SetTreatSpriteAsBitmap(bool spriteAsBitmap) { + gTreatSpriteAsBitmap = spriteAsBitmap; +} +bool SkCanvas::Internal_Private_GetTreatSpriteAsBitmap() { + return gTreatSpriteAsBitmap; +} + // experimental for faster tiled drawing... //#define SK_ENABLE_CLIP_QUICKREJECT @@ -1190,6 +1198,14 @@ void SkCanvas::internalDrawDevice(SkBaseDevice* srcDev, int x, int y, void SkCanvas::drawSprite(const SkBitmap& bitmap, int x, int y, const SkPaint* paint) { + if (gTreatSpriteAsBitmap) { + this->save(); + this->resetMatrix(); + this->drawBitmap(bitmap, SkIntToScalar(x), SkIntToScalar(y), paint); + this->restore(); + return; + } + TRACE_EVENT0("disabled-by-default-skia", "SkCanvas::drawSprite()"); if (bitmap.drawsNothing()) { return; |