mirror of
https://github.com/rommapp/romm.git
synced 2026-06-28 14:56:01 +00:00
Clicking Play at the center of a gallery cover now runs the shared-element view transition into the /ejs (EmulatorJS) or /ruffle hero, matching the card → details morph. - useGameActions gains an optional `coverEl` resolver; `play()` wraps the navigation in `morphTransition` (cover → player hero, same `rom-cover-<id>` tag the player paints statically) and awaits the push so the snapshot is taken after the player renders. GameCard supplies its GameCover box. - The player heroes only seeded `rom` from `currentRom` (set via GameDetails), so a direct gallery→play left `rom` null and the `v-if`-gated hero never rendered — nothing to morph into. Seed a lightweight `heroSeed` SimpleRom from the gallery store (new `galleryRoms.getRomById`) so the cover paints its morph tag immediately; `rom` fills in on mount. Play is disabled until the full payload loads. - Enable hover-motion on both player heroes so the cover spin / hover video work there too. - Arcade systems (arcade / neogeoaes / neogeomvs) skip the cartridge slot-in animation (new `isArcadeSystem`). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>