diff --git a/app/src/main/java/com/github/apognu/otter/adapters/DownloadsAdapter.kt b/app/src/main/java/com/github/apognu/otter/adapters/DownloadsAdapter.kt index b3ed5c4..4e59c23 100644 --- a/app/src/main/java/com/github/apognu/otter/adapters/DownloadsAdapter.kt +++ b/app/src/main/java/com/github/apognu/otter/adapters/DownloadsAdapter.kt @@ -79,7 +79,7 @@ class DownloadsAdapter(private val context: Context, private val listener: OnDow Download.STATE_QUEUED, Download.STATE_DOWNLOADING -> DownloadService.sendSetStopReason(context, PinService::class.java, download.contentId, 1, false) Download.STATE_FAILED -> { - Track(download.id, download.title, Artist(0, download.artist, listOf()), Album(0, Album.Artist(""), "", Covers(""), ""), 0, listOf(Track.Upload(download.contentId, 0, 0))).also { + Track.fromDownload(download).also { PinService.download(context, it) } } diff --git a/app/src/main/java/com/github/apognu/otter/fragments/TrackInfoDetailsFragment.kt b/app/src/main/java/com/github/apognu/otter/fragments/TrackInfoDetailsFragment.kt index e098f4d..4d54c5a 100644 --- a/app/src/main/java/com/github/apognu/otter/fragments/TrackInfoDetailsFragment.kt +++ b/app/src/main/java/com/github/apognu/otter/fragments/TrackInfoDetailsFragment.kt @@ -24,6 +24,8 @@ class TrackInfoDetailsFragment : DialogFragment() { "artistName" to track.artist.name, "albumTitle" to track.album.title, "trackTitle" to track.title, + "trackCopyright" to track.copyright, + "trackLicense" to track.license, "trackPosition" to track.position, "trackDuration" to track.bestUpload()?.duration?.toLong()?.let { toDurationString(it, showSeconds = true) }, "trackBitrate" to track.bestUpload()?.bitrate?.let { "${it / 1000} Kbps" }, @@ -48,6 +50,8 @@ class TrackInfoDetailsFragment : DialogFragment() { properties.add(Pair(R.string.track_info_details_artist, getString("artistName"))) properties.add(Pair(R.string.track_info_details_album, getString("albumTitle"))) properties.add(Pair(R.string.track_info_details_track_title, getString("trackTitle"))) + properties.add(Pair(R.string.track_info_details_track_copyright, getString("trackCopyright"))) + properties.add(Pair(R.string.track_info_details_track_license, getString("trackLicense"))) properties.add(Pair(R.string.track_info_details_track_duration, getString("trackDuration"))) properties.add(Pair(R.string.track_info_details_track_position, getString("trackPosition"))) properties.add(Pair(R.string.track_info_details_track_bitrate, getString("trackBitrate"))) diff --git a/app/src/main/java/com/github/apognu/otter/utils/Models.kt b/app/src/main/java/com/github/apognu/otter/utils/Models.kt index dd89cb2..dc7b360 100644 --- a/app/src/main/java/com/github/apognu/otter/utils/Models.kt +++ b/app/src/main/java/com/github/apognu/otter/utils/Models.kt @@ -96,18 +96,30 @@ data class Artist( } data class Track( - val id: Int, + val id: Int = 0, val title: String, val artist: Artist, val album: Album, - val position: Int, - val uploads: List + val position: Int = 0, + val uploads: List = listOf(), + val copyright: String? = null, + val license: String? = null ) : SearchResult { var current: Boolean = false var favorite: Boolean = false var cached: Boolean = false var downloaded: Boolean = false + companion object { + fun fromDownload(download: DownloadInfo): Track = Track( + id = download.id, + title = download.title, + artist = Artist(0, download.artist, listOf()), + album = Album(0, Album.Artist(""), "", Covers(""), ""), + uploads = listOf(Upload(download.contentId, 0, 0)) + ) + } + data class Upload( val listen_url: String, val duration: Int, diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 0838dd3..996ba2a 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -84,6 +84,8 @@ Artiste Album Nom de piste + Copyright + Licence Durée Position dans l\'album Bitrate diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 14399e5..891ce0d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -85,6 +85,8 @@ Artist Album Track title + Copyright + License Duration Album position Bitrate