Merge branch 'master' into dev
This commit is contained in:
commit
0ed7938be9
7 changed files with 41 additions and 20 deletions
|
@ -20,6 +20,14 @@
|
|||
#### Dev/Meta
|
||||
- No longer using custom logging setup
|
||||
|
||||
## 3.6.3
|
||||
|
||||
#### What's Fixed
|
||||
- Fixed broken replaygain
|
||||
- Fixed hide collaborators being broken
|
||||
- Fixed crash when navigating to artists w/appearances
|
||||
- Fixed headers appearing on empty detail sections
|
||||
|
||||
## 3.6.2
|
||||
|
||||
#### What's Fixed
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
<h1 align="center"><b>Auxio</b></h1>
|
||||
<h4 align="center">A simple, rational music player for android.</h4>
|
||||
<p align="center">
|
||||
<a href="https://github.com/oxygencobalt/Auxio/releases/tag/v3.6.2">
|
||||
<img alt="Latest Version" src="https://img.shields.io/static/v1?label=tag&message=v3.6.2&color=64B5F6&style=flat">
|
||||
<a href="https://github.com/oxygencobalt/Auxio/releases/tag/v3.6.3">
|
||||
<img alt="Latest Version" src="https://img.shields.io/static/v1?label=tag&message=v3.6.3&color=64B5F6&style=flat">
|
||||
</a>
|
||||
<a href="https://github.com/oxygencobalt/Auxio/releases/">
|
||||
<img alt="Releases" src="https://img.shields.io/github/downloads/OxygenCobalt/Auxio/total.svg?color=4B95DE&style=flat">
|
||||
|
|
|
@ -21,8 +21,8 @@ android {
|
|||
|
||||
defaultConfig {
|
||||
applicationId namespace
|
||||
versionName "3.6.2"
|
||||
versionCode 52
|
||||
versionName "3.6.3"
|
||||
versionCode 53
|
||||
|
||||
minSdk 24
|
||||
targetSdk 35
|
||||
|
|
|
@ -156,21 +156,19 @@ private class DetailGeneratorImpl(
|
|||
}
|
||||
|
||||
if (artist.implicitAlbums.isNotEmpty()) {
|
||||
// groupByTo normally returns a mapping to a MutableList mapping. Since MutableList
|
||||
// inherits list, we can cast upwards and save a copy by directly inserting the
|
||||
// implicit album list into the mapping.
|
||||
L.d("Implicit albums present, adding to list")
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
(grouping as MutableMap<DetailSection.Albums.Category, Collection<Album>>)[
|
||||
DetailSection.Albums.Category.APPEARANCES] = artist.implicitAlbums
|
||||
grouping[DetailSection.Albums.Category.APPEARANCES] =
|
||||
artist.implicitAlbums.toMutableList()
|
||||
}
|
||||
|
||||
val sections =
|
||||
grouping.mapTo(mutableListOf<DetailSection>()) { (category, albums) ->
|
||||
DetailSection.Albums(category, ARTIST_ALBUM_SORT.albums(albums))
|
||||
}
|
||||
if (artist.songs.isNotEmpty()) {
|
||||
val songs = DetailSection.Songs(listSettings.artistSongSort.songs(artist.songs))
|
||||
sections.add(songs)
|
||||
}
|
||||
return Detail(artist, sections)
|
||||
}
|
||||
|
||||
|
@ -183,9 +181,12 @@ private class DetailGeneratorImpl(
|
|||
|
||||
override fun playlist(uid: Music.UID): Detail<Playlist>? {
|
||||
val playlist = musicRepository.userLibrary?.findPlaylist(uid) ?: return null
|
||||
if (playlist.songs.isNotEmpty()) {
|
||||
val songs = DetailSection.Songs(playlist.songs)
|
||||
return Detail(playlist, listOf(songs))
|
||||
}
|
||||
return Detail(playlist, listOf())
|
||||
}
|
||||
|
||||
private companion object {
|
||||
val ARTIST_ALBUM_SORT = Sort(Sort.Mode.ByDate, Sort.Direction.DESCENDING)
|
||||
|
|
|
@ -90,7 +90,7 @@ private class HomeGeneratorImpl(
|
|||
// Changes in the hide collaborator setting will change the artist contents
|
||||
// of the library, consider it a library update.
|
||||
L.d("Collaborator setting changed, forwarding update")
|
||||
onMusicChanges(MusicRepository.Changes(deviceLibrary = true, userLibrary = false))
|
||||
invalidator.invalidateMusic(MusicType.ARTISTS, UpdateInstructions.Diff)
|
||||
}
|
||||
|
||||
override fun onSongSortChanged() {
|
||||
|
@ -151,7 +151,14 @@ private class HomeGeneratorImpl(
|
|||
?: emptyList()
|
||||
|
||||
override fun artists() =
|
||||
musicRepository.deviceLibrary?.let { listSettings.artistSort.artists(it.artists) }
|
||||
musicRepository.deviceLibrary?.let { deviceLibrary ->
|
||||
val sorted = listSettings.artistSort.artists(deviceLibrary.artists)
|
||||
if (homeSettings.shouldHideCollaborators) {
|
||||
sorted.filter { it.explicitAlbums.isNotEmpty() }
|
||||
} else {
|
||||
sorted
|
||||
}
|
||||
}
|
||||
?: emptyList()
|
||||
|
||||
override fun genres() =
|
||||
|
|
|
@ -87,20 +87,22 @@ class ExoPlaybackStateHolder(
|
|||
private set
|
||||
|
||||
fun attach() {
|
||||
imageSettings.registerListener(this)
|
||||
player.addListener(this)
|
||||
playbackManager.registerStateHolder(this)
|
||||
playbackSettings.registerListener(this)
|
||||
musicRepository.addUpdateListener(this)
|
||||
player.addListener(this)
|
||||
replayGainProcessor.attach()
|
||||
playbackSettings.registerListener(this)
|
||||
imageSettings.registerListener(this)
|
||||
}
|
||||
|
||||
fun release() {
|
||||
saveJob.cancel()
|
||||
player.removeListener(this)
|
||||
playbackManager.unregisterStateHolder(this)
|
||||
musicRepository.removeUpdateListener(this)
|
||||
player.removeListener(this)
|
||||
replayGainProcessor.release()
|
||||
imageSettings.unregisterListener(this)
|
||||
playbackSettings.unregisterListener(this)
|
||||
player.release()
|
||||
}
|
||||
|
||||
|
|
3
fastlane/metadata/android/en-US/changelogs/53.txt
Normal file
3
fastlane/metadata/android/en-US/changelogs/53.txt
Normal file
|
@ -0,0 +1,3 @@
|
|||
Auxio 3.6.0 improves support for android auto and fixes several small regressions.
|
||||
This release fixes critical UI and playback issues identified in the previous version.
|
||||
For more information, see https://github.com/OxygenCobalt/Auxio/releases/tag/v3.6.0.
|
Loading…
Reference in a new issue