* When in Album Shuffle mode, enqueue all tracks from the same album at once.
* Replaced getRandomSong() with getRandomSongs(). Queue shrink can always be 20, without issue.
* Updated comment text.
* Grab the first song, not the last.
* Use a do-while loop for adding all the album songs.
* Show the album name on the FourLongWidget.
* Ignore Visual Studio's cache.
* If only one of (ARTIST, ALBUMARTIST) is present, populate the other.
This is only natural and most applications that implement media library population do this.
* On completion of the queue, rewind to the beginning of the queue, so that a subsequent Play command will play the whole queue again.
* Correct <plurals> values according to the best practices and add a CLDR rules link for translators to look for their language's specific informaiton.
* When in Album Shuffle mode, enqueue all tracks from the same album at once.
* Replaced getRandomSong() with getRandomSongs(). Queue shrink can always be 20, without issue.
* Updated comment text.
* Grab the first song, not the last.
* Use a do-while loop for adding all the album songs.
We were hanging there if a user selected the previous album if:
* He already was at the first album
* And FINISH_RANDOM was enabled
The new code is somewhat simpler to read and handles the case where we hit song 0
in random mode.
refreshReplayGainValues may get called from onSharedPreferenceChanged where we didn't yet prepare a media player.
Ensure that refreshReplayGainValues() does not trigger an update in such situations, as there is nothing to refresh.
Windows Media Player saves album covers in AlbumArt* files. Since 2011
Android has considered them as non-media files[1] and hasn't shown in
the Gallery application.
[1] ade06df0fe
ScheduledLibraryUpdate extends JobService which requires API >= 21.
This causes older versions to crash at startup as the whole ScheduledLibraryUpdate class does not 'exist' on older devices.