fbddfbb9f3
Add support for external precomp Skottie layers. This allows embedders to seamlessly mix custom/Lottie content. General flow: * embedders register a PrecompInterceptor callback with the animation builder * at build time, Skottie invokes the callback for each pre-composed layer - the returned ExternalLayer implementation is used instead of the Lottie layer payload - (a nullptr value signals Skottie to use the usual Lottie payload) * at render time, ExternalLayer::render() is called to defer content rendering to the embedder Also implement a sample PrecompInterceptor which attempts to substitute precmp layers matching a given pattern with external Lottie animations: precomp_name: "__foo.json" -> Animation("foo.json") This new mechanism is a generalization of (and supersedes) the old NestedAnimation hack - so we can remove that. Change-Id: Id80fe11881c62b8717c2476117c7c03ad5300eef Reviewed-on: https://skia-review.googlesource.com/c/skia/+/288130 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Reed <reed@google.com> |
||
---|---|---|
.. | ||
AnimTimer.h | ||
BisectSlide.cpp | ||
BisectSlide.h | ||
GMSlide.cpp | ||
GMSlide.h | ||
ImageSlide.cpp | ||
ImageSlide.h | ||
ImGuiLayer.cpp | ||
ImGuiLayer.h | ||
ParticlesSlide.cpp | ||
ParticlesSlide.h | ||
SampleSlide.cpp | ||
SampleSlide.h | ||
SkottieSlide.cpp | ||
SkottieSlide.h | ||
SKPSlide.cpp | ||
SKPSlide.h | ||
SkSLSlide.cpp | ||
SkSLSlide.h | ||
Slide.h | ||
SlideDir.cpp | ||
SlideDir.h | ||
StatsLayer.cpp | ||
StatsLayer.h | ||
SvgSlide.cpp | ||
SvgSlide.h | ||
TouchGesture.cpp | ||
TouchGesture.h | ||
Viewer.cpp | ||
Viewer.h |