diff --git a/app/src/main/java/net/nullsum/audinaut/fragments/NowPlayingFragment.java b/app/src/main/java/net/nullsum/audinaut/fragments/NowPlayingFragment.java index e5ae8cf..4fdcfbd 100644 --- a/app/src/main/java/net/nullsum/audinaut/fragments/NowPlayingFragment.java +++ b/app/src/main/java/net/nullsum/audinaut/fragments/NowPlayingFragment.java @@ -519,8 +519,7 @@ public class NowPlayingFragment extends SubsonicFragment implements OnGestureLis } if (currentPlaying == null && downloadService != null && null == downloadService.getCurrentPlaying()) { - getImageLoader().loadBlurImage(albumArtBackgroundView, null, true, false); - getImageLoader().loadImage(albumArtImageView, null, true, false); + setAlbumArt(null, false); } context.runWhenServiceAvailable(() -> { @@ -808,8 +807,7 @@ public class NowPlayingFragment extends SubsonicFragment implements OnGestureLis if (currentPlaying != null) { Entry song = currentPlaying.getSong(); songTitleTextView.setText(song.getTitle()); - getImageLoader().loadBlurImage(albumArtBackgroundView, song, true, true); - getImageLoader().loadImage(albumArtImageView, song, true, true); + setAlbumArt(song, true); DownloadService downloadService = getDownloadService(); if (downloadService.isShufflePlayEnabled()) { @@ -819,8 +817,7 @@ public class NowPlayingFragment extends SubsonicFragment implements OnGestureLis } } else { songTitleTextView.setText(null); - getImageLoader().loadBlurImage(albumArtBackgroundView, null, true, false); - getImageLoader().loadImage(albumArtImageView, null, true, false); + setAlbumArt(null, false); setSubtitle(null); } } @@ -942,11 +939,20 @@ public class NowPlayingFragment extends SubsonicFragment implements OnGestureLis } } + private void setAlbumArt(Entry song, Boolean crossfade) { + getImageLoader().loadImage(albumArtImageView, song, true, crossfade); + if (Util.getPreferences(context).getBoolean(Constants.PREFERENCES_KEY_BLURRED_BACKGROUND, true)) { + albumArtBackgroundView.setVisibility(ImageView.VISIBLE); + getImageLoader().loadBlurImage(albumArtBackgroundView, song, true, crossfade); + } else { + albumArtBackgroundView.setVisibility(ImageView.GONE); + } + } + @Override public void onMetadataUpdate(Entry song, int fieldChange) { if (song != null && albumArtImageView != null && fieldChange == DownloadService.METADATA_UPDATED_COVER_ART) { - getImageLoader().loadBlurImage(albumArtBackgroundView, song, true, true); - getImageLoader().loadImage(albumArtImageView, song, true, true); + setAlbumArt(song, true); } } diff --git a/app/src/main/java/net/nullsum/audinaut/util/Constants.java b/app/src/main/java/net/nullsum/audinaut/util/Constants.java index 5e4ac90..e1b6509 100644 --- a/app/src/main/java/net/nullsum/audinaut/util/Constants.java +++ b/app/src/main/java/net/nullsum/audinaut/util/Constants.java @@ -110,6 +110,7 @@ public final class Constants { // public static final String PREFERENCES_KEY_PLAY_NOW_AFTER = "playNowAfter"; public static final String PREFERENCES_KEY_SONG_PRESS_ACTION = "songPressAction"; public static final String PREFERENCES_KEY_LARGE_ALBUM_ART = "largeAlbumArt"; + public static final String PREFERENCES_KEY_BLURRED_BACKGROUND = "blurredBackground"; public static final String PREFERENCES_KEY_PLAYLIST_NAME = "suggestedPlaylistName"; public static final String PREFERENCES_KEY_PLAYLIST_ID = "suggestedPlaylistId"; public static final String PREFERENCES_KEY_RECENT_COUNT = "mostRecentCount"; diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fcd54f0..c995381 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -232,6 +232,8 @@ Adds song to end of Now Playing Queue Large Album Art Display albums with large album art instead of in a list + Blurred Background + Display blurred album art in the background of the now playing screen Replay Gain Whether or not to scale playback volume by track and album replay gain tags Read from tags diff --git a/app/src/main/res/xml/settings_appearance.xml b/app/src/main/res/xml/settings_appearance.xml index b232341..a15deb5 100644 --- a/app/src/main/res/xml/settings_appearance.xml +++ b/app/src/main/res/xml/settings_appearance.xml @@ -49,5 +49,11 @@ android:key="largeAlbumArt" android:summary="@string/settings.large_album_art_summary" android:title="@string/settings.large_album_art" /> + +