Index: tests/CanvasStateTest.cpp |
diff --git a/tests/CanvasStateTest.cpp b/tests/CanvasStateTest.cpp |
index 4f5fb463e3a3461bd0c22bff432d6977c1e92f8f..bd7c325ca2d2265e2c160cbe317b13823f54ed17 100644 |
--- a/tests/CanvasStateTest.cpp |
+++ b/tests/CanvasStateTest.cpp |
@@ -14,6 +14,7 @@ |
#include "SkPaint.h" |
#include "SkRRect.h" |
#include "SkRect.h" |
+#include "SkTLazy.h" |
#include "Test.h" |
// dlopen and the library flag are only used for tests which require this flag. |
@@ -71,9 +72,10 @@ DEF_TEST(CanvasState_test_complex_layers, reporter) { |
}; |
const int layerAlpha[] = { 255, 255, 0 }; |
- const SkCanvas::SaveFlags flags[] = { SkCanvas::kARGB_NoClipLayer_SaveFlag, |
- SkCanvas::kARGB_ClipLayer_SaveFlag, |
- SkCanvas::kARGB_NoClipLayer_SaveFlag |
+ const SkCanvas::SaveLayerFlags flags[] = { |
+ static_cast<SkCanvas::SaveLayerFlags>(SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag), |
+ 0, |
+ static_cast<SkCanvas::SaveLayerFlags>(SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag), |
}; |
REPORTER_ASSERT(reporter, sizeof(layerAlpha) == sizeof(flags)); |
@@ -105,8 +107,13 @@ DEF_TEST(CanvasState_test_complex_layers, reporter) { |
canvas.drawColor(SK_ColorRED); |
for (size_t k = 0; k < SK_ARRAY_COUNT(layerAlpha); ++k) { |
+ SkTLazy<SkPaint> paint; |
+ if (layerAlpha[k] != 0xFF) { |
+ paint.init()->setAlpha(layerAlpha[k]); |
+ } |
+ |
// draw a rect within the layer's bounds and again outside the layer's bounds |
- canvas.saveLayerAlpha(&rect, layerAlpha[k], flags[k]); |
+ canvas.saveLayer(SkCanvas::SaveLayerRec(&rect, paint.getMaybeNull(), flags[k])); |
if (j) { |
// Capture from the first Skia. |
@@ -172,9 +179,10 @@ DEF_TEST(CanvasState_test_complex_clips, reporter) { |
SkRegion::kIntersect_Op, |
SkRegion::kReplace_Op, |
}; |
- const SkCanvas::SaveFlags flags[] = { SkCanvas::kARGB_NoClipLayer_SaveFlag, |
- SkCanvas::kARGB_ClipLayer_SaveFlag, |
- SkCanvas::kARGB_NoClipLayer_SaveFlag, |
+ const SkCanvas::SaveLayerFlags flags[] = { |
+ static_cast<SkCanvas::SaveLayerFlags>(SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag), |
+ 0, |
+ static_cast<SkCanvas::SaveLayerFlags>(SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag), |
}; |
REPORTER_ASSERT(reporter, sizeof(clipOps) == sizeof(flags)); |
@@ -205,9 +213,11 @@ DEF_TEST(CanvasState_test_complex_clips, reporter) { |
SkRegion localRegion = clipRegion; |
+ SkPaint paint; |
+ paint.setAlpha(128); |
for (size_t j = 0; j < SK_ARRAY_COUNT(flags); ++j) { |
SkRect layerBounds = SkRect::Make(layerRect); |
- canvas.saveLayerAlpha(&layerBounds, 128, flags[j]); |
+ canvas.saveLayer(SkCanvas::SaveLayerRec(&layerBounds, &paint, flags[j])); |
if (i) { |
SkCanvasState* state = SkCanvasStateUtils::CaptureCanvasState(&canvas); |
@@ -318,7 +328,9 @@ DEF_TEST(CanvasState_test_saveLayer_clip, reporter) { |
// Check that saveLayer without the kClipToLayer_SaveFlag leaves the |
// clip stack unchanged. |
- canvas.saveLayer(&bounds, nullptr, SkCanvas::kARGB_NoClipLayer_SaveFlag); |
+ canvas.saveLayer(SkCanvas::SaveLayerRec(&bounds, |
+ nullptr, |
+ SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag)); |
SkRect clipStackBounds; |
SkClipStack::BoundsType boundsType; |
canvas.getClipStack()->getBounds(&clipStackBounds, &boundsType); |
@@ -334,7 +346,7 @@ DEF_TEST(CanvasState_test_saveLayer_clip, reporter) { |
// Check that saveLayer with the kClipToLayer_SaveFlag sets the clip |
// stack to the layer bounds. |
- canvas.saveLayer(&bounds, nullptr, SkCanvas::kARGB_ClipLayer_SaveFlag); |
+ canvas.saveLayer(&bounds, nullptr); |
canvas.getClipStack()->getBounds(&clipStackBounds, &boundsType); |
REPORTER_ASSERT(reporter, clipStackBounds.width() == LAYER_WIDTH); |
REPORTER_ASSERT(reporter, clipStackBounds.height() == LAYER_HEIGHT); |