Skip to content

perf: improve artwork handling and adjust crossfade defaults#1163

Merged
theovilardo merged 1 commit intomasterfrom
fix/crossfade-and-metadataupdate-miniplayer
Feb 21, 2026
Merged

perf: improve artwork handling and adjust crossfade defaults#1163
theovilardo merged 1 commit intomasterfrom
fix/crossfade-and-metadataupdate-miniplayer

Conversation

@theovilardo
Copy link
Copy Markdown
Owner

  • Player & UI:
    • Wrap SmartImage in a key(song.id) block within UnifiedPlayerSheet to ensure correct image recomposition when the song changes.
    • Update SmartImage to reset its cached lastSuccessPainter when the image request data changes.
    • Refactor PlayerViewModel.resolveSongFromMediaItem to prioritize global library state and implement normalizeArtworkForResolvedSong to sync Song metadata with MediaItem artwork URIs.
  • Settings & Defaults:
    • Disable crossfade by default and reduce the default duration from 6000ms to 2000ms.
    • Expand the minimum allowed crossfade duration from 2000ms to 1000ms in SettingsCategoryScreen.
    • Apply duration constraints (1s–12s) and updated defaults across UserPreferencesRepository and TransitionSettings.

- **Player & UI**:
    - Wrap `SmartImage` in a `key(song.id)` block within `UnifiedPlayerSheet` to ensure correct image recomposition when the song changes.
    - Update `SmartImage` to reset its cached `lastSuccessPainter` when the image request data changes.
    - Refactor `PlayerViewModel.resolveSongFromMediaItem` to prioritize global library state and implement `normalizeArtworkForResolvedSong` to sync `Song` metadata with `MediaItem` artwork URIs.
- **Settings & Defaults**:
    - Disable crossfade by default and reduce the default duration from 6000ms to 2000ms.
    - Expand the minimum allowed crossfade duration from 2000ms to 1000ms in `SettingsCategoryScreen`.
    - Apply duration constraints (1s–12s) and updated defaults across `UserPreferencesRepository` and `TransitionSettings`.
@theovilardo theovilardo merged commit 013792a into master Feb 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant