diff options
author | Matt Sarett <msarett@google.com> | 2017-04-11 08:46:01 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-04-11 13:28:29 +0000 |
commit | 31f99ce7d2f3c2b61742d07ab92b6dac6a928ef9 (patch) | |
tree | f1b2fdef9687f3fadc017e600ebc1c772aa3e5a5 /tests | |
parent | 934292170bade335f972a050a2f64d2cca9ca299 (diff) |
SkCanvas constructor with legacy flag for Android framework
Bug: skia:
Change-Id: I5b268ad03dde075f2710196d5ad2bd19249557f7
Reviewed-on: https://skia-review.googlesource.com/11788
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/CanvasTest.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/CanvasTest.cpp b/tests/CanvasTest.cpp index 26228bacde..fabd19574a 100644 --- a/tests/CanvasTest.cpp +++ b/tests/CanvasTest.cpp @@ -887,3 +887,23 @@ DEF_TEST(CanvasClipType, r) { SkDynamicMemoryWStream stream; test_cliptype(SkDocument::MakePDF(&stream)->beginPage(100, 100), r); } + +#ifdef SK_BUILD_FOR_ANDROID_FRAMEWORK +DEF_TEST(Canvas_LegacyColorBehavior, r) { + sk_sp<SkColorSpace> cs = SkColorSpace::MakeRGB(SkColorSpace::kSRGB_RenderTargetGamma, + SkColorSpace::kAdobeRGB_Gamut); + + // Make a Adobe RGB bitmap. + SkBitmap bitmap; + bitmap.allocPixels(SkImageInfo::MakeN32(1, 1, kOpaque_SkAlphaType, cs)); + bitmap.eraseColor(0xFF000000); + + // Wrap it in a legacy canvas. Test that the canvas behaves like a legacy canvas. + SkCanvas canvas(bitmap, SkCanvas::ColorBehavior::kLegacy); + REPORTER_ASSERT(r, !canvas.imageInfo().colorSpace()); + SkPaint p; + p.setColor(SK_ColorRED); + canvas.drawIRect(SkIRect::MakeWH(1, 1), p); + REPORTER_ASSERT(r, SK_ColorRED == SkSwizzle_BGRA_to_PMColor(*bitmap.getAddr32(0, 0))); +} +#endif |