You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When `useImageSize` had a smaller cached size (e.g. 150×150) but needed
a larger one (e.g. 480×480 on a track page), it set `imageUrl` to the
small URL then switched to the large URL once fetched. The source change
caused `Image.tsx` to reset `opacity = 0` and re-fade — a visible flash
on track, profile, and playlist pages.
`useImageSize` now sets `imageUrl` to the target URL optimistically and
returns `priorityLowResUrl` as a separate value. `TrackImage`,
`CollectionImage`, and `UserImage` pass it as `priorityLowResSource` to
`Artwork`/`Image`, which renders it as a blurred backdrop while the
high-res crossfades in.
## Test plan
- [ ] Navigate to a track page — artwork should crossfade from blurred
low-res to full-res, no flash
- [ ] Same on profile and playlist pages
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
0 commit comments