[skottie] Optimize opacity layerization
- plumb a RenderContext RenderNode::render() argument to track pending
opacity
- defer opacity application until we can determine whether a layer is
required (group with multiple children) or the opacity can be pushed
onto the draw paint (for single/atomic draws)
Bug: skia:
Change-Id: I962ba08bad780395d5d738307bde986e9efa502b
Reviewed-on: https://skia-review.googlesource.com/146445
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
diff --git a/tools/viewer/SlideDir.cpp b/tools/viewer/SlideDir.cpp
index 517d823..584bfe8 100644
--- a/tools/viewer/SlideDir.cpp
+++ b/tools/viewer/SlideDir.cpp
@@ -72,9 +72,11 @@
return SkRect::MakeIWH(isize.width(), isize.height());
}
- void onRender(SkCanvas* canvas) const override {
+ void onRender(SkCanvas* canvas, const RenderContext* ctx) const override {
SkAutoCanvasRestore acr(canvas, true);
canvas->clipRect(SkRect::Make(fSlide->getDimensions()), true);
+
+ // TODO: commit the context?
fSlide->draw(canvas);
}