aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--dm/DMSrcSink.cpp26
-rw-r--r--tools/viewer/SkottySlide.cpp1
2 files changed, 18 insertions, 9 deletions
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp
index 1685dcbe96..d0c468159e 100644
--- a/dm/DMSrcSink.cpp
+++ b/dm/DMSrcSink.cpp
@@ -1341,11 +1341,13 @@ Error SkottySrc::draw(SkCanvas* canvas) const {
canvas->drawColor(SK_ColorWHITE);
- SkPaint paint;
+ SkPaint paint, clockPaint;
paint.setColor(0xffa0a0a0);
paint.setStyle(SkPaint::kStroke_Style);
paint.setStrokeWidth(0);
+ clockPaint.setTextSize(12);
+
const auto ip = fAnimation->inPoint() * 1000 / fAnimation->frameRate(),
op = fAnimation->outPoint() * 1000 / fAnimation->frameRate(),
fr = (op - ip) / (kTileCount * kTileCount - 1);
@@ -1360,15 +1362,21 @@ Error SkottySrc::draw(SkCanvas* canvas) const {
canvas->drawLine(x + .5f, 0, x + .5f, canvas_size.height(), paint);
SkRect dest = SkRect::MakeXYWH(x, y, fTileSize.width(), fTileSize.height());
- SkAutoCanvasRestore acr(canvas, true);
- canvas->clipRect(dest);
- canvas->concat(SkMatrix::MakeRectToRect(SkRect::MakeSize(fAnimation->size()),
- dest,
- SkMatrix::kFill_ScaleToFit));
-
const auto t = fr * (i * kTileCount + j);
- fAnimation->animationTick(t);
- fAnimation->render(canvas);
+ {
+ SkAutoCanvasRestore acr(canvas, true);
+ canvas->clipRect(dest);
+ canvas->concat(SkMatrix::MakeRectToRect(SkRect::MakeSize(fAnimation->size()),
+ dest,
+ SkMatrix::kFill_ScaleToFit));
+
+ fAnimation->animationTick(t);
+ fAnimation->render(canvas);
+ }
+
+ const auto label = SkStringPrintf("%.3f", t);
+ canvas->drawText(label.c_str(), label.size(), dest.x(),
+ dest.bottom(), clockPaint);
}
}
diff --git a/tools/viewer/SkottySlide.cpp b/tools/viewer/SkottySlide.cpp
index a26acf6172..99f182a7bb 100644
--- a/tools/viewer/SkottySlide.cpp
+++ b/tools/viewer/SkottySlide.cpp
@@ -21,6 +21,7 @@ void SkottySlide::load(SkScalar, SkScalar) {
fTimeBase = 0; // force a time reset
if (fAnimation) {
+ fAnimation->setShowInval(fShowAnimationInval);
SkDebugf("loaded Bodymovin animation v: %s, size: [%f %f], fr: %f\n",
fAnimation->version().c_str(),
fAnimation->size().width(),