Repository navigation
feat(superdeck): animate images between slides - #136
Conversation
|
Visit the preview URL for this PR (updated for commit 871e215): https://superdeck-dev--pr136-feat-automatic-image-n0xwfadv.web.app (expires Sun, 25 Oct 2026 19:01:08 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: bd68fc230762285849207e7e120aaf87cd4ca2f9 |
ImageHeroPositions counted only top-level standalone images, while
ImageBlockSyntax stamped every standalone image, including ones nested
in blockquotes, alerts, and list items. A quoted image next to a
top-level image therefore produced two `superdeck:image:0` Heroes and
Flutter threw "multiple heroes that share the same tag" on the next
slide transition. Alerts were off by one because their nested body
reused the same image builder counter.
Stamp the automatic position only when the image is parsed at the top
level, give alert bodies a nested syntax list that never stamps it, and
count positions with the same shared syntax list the renderer uses.
Nested images still render and still honor explicit `{.tag}` markers.
Automatic image Hero transitions stay on by default. Setting `DeckOptions(animateImages: false)` stops untagged standalone Markdown images and `@image` blocks from taking automatic Hero tags, while explicit Markdown Hero tags keep animating. The option reaches the renderers through SlideConfiguration, like `debug`.
|
Pushed three commits addressing the review of this PR. Fix: nested standalone images no longer share automatic Hero tags
New option:
|
Summary
@imageblocks by image order across slides, so they animate through Hero transitions without author-supplied tags. Explicit Markdown Hero tags still take precedence.Validation
fvm flutter test --exclude-tags ci-excluded --no-pubinpackages/superdeck— passed (803 tests, 1 skipped).fvm dart run melos run analyze:dart— passed across all 7 packages.fvm dart run melos run fix— Dart fix found nothing; DCM could not run because its license is not activated in this environment.