private void LoadNewTrackAlbumArtIfPresent(NewTrackLoadedEventArgs newTrackArgs) { var albumId = newTrackArgs.Track.Album?.Id; try { if (albumId.HasValue && _albumArtCache.CheckCacheForAlbum(albumId.Value)) { var albumArtCachedImagePath = _albumArtCache.GetAlbumArtPathFromCache(albumId.Value); UpdateAlbumArt(albumArtCachedImagePath); return; } if (!newTrackArgs.Track.Metadata.HasAlbumArt) { UpdateAlbumArt(ImageResources.DefaultAlbumArtUri); return; } var albumArtTempImagePath = newTrackArgs.Track.Metadata.SaveAlbumArtToTempFile(); UpdateAlbumArt(albumArtTempImagePath); } catch { UpdateAlbumArt(ImageResources.DefaultAlbumArtUri); } }
/// <summary> /// /// </summary> private void CallNewTrackEventHandlers(bool skippingTrack) { if (!skippingTrack && Tracks.Count > 0 && (_currentTrackIndex > -1 && _currentTrackIndex < Tracks.Count)) { // Register track as recently played with music library and // load current track into media player. var currentTrack = Tracks[_currentTrackIndex]; _musicLibrary.RecentlyPlayed.Add(currentTrack); if (NewTrackLoaded != null) { var newTrackArgs = new NewTrackLoadedEventArgs { Track = Tracks[_currentTrackIndex], TrackIndex = _currentTrackIndex }; NewTrackLoaded(this, newTrackArgs); } } }