Repository navigation
fix(kiosk): stop the pet freezing old iPads on the kiosk page - #1132
Merged
Merged
Conversation
The kiosk's idle countdown ring changes every second, and each change laid the whole card out again. Old iOS Safari laid out and painted every inline SVG shape in the pet tile each time, which froze the page once a pet was on it (the plain pet card, with nothing ticking, was fine). - The pet's scene layers are drawn as images (SVG data URIs), so a relayout no longer touches the pet's shapes. It looks the same. - The countdown ring has strict containment, so its change stays inside its 40px circle. Fixes #1126
This was referenced Oct 25, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #1126 (kept open until the reporter confirms the beta on their iPad).
On the kiosk the idle countdown ring changes every second, and each change laid the whole card out again. Old iOS Safari (iPad on iOS 15.8) laid out and painted every inline SVG shape in the pet tile on each tick, which froze the page once a pet was on it. The reporter confirmed it is not the animations (Reduce Motion made no difference) and that the plain pet card works.
<img>elements with SVG data URLs, so a relayout no longer touches the pet's shapes. The animations stay on the HTML wrappers. It looks the same.contain: strict, so its per-second change stays inside the circle.Tested: 1177 frontend tests pass, plus two new regression tests that fail on the old code. Old and new pets compared side by side in browserless (accessories, sleepy, legendary with home and egg) look identical. The real kiosk on ha-dev with this code has no inline SVG in the pet tile, and was checked at 375px and 768px.