playback: partially build back pager impl

This commit is contained in:
Alexander Capehart 2023-10-16 20:44:57 -06:00
parent d51da1b4bf
commit 2fe0f3e7d8
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47

View file

@ -20,19 +20,18 @@ package org.oxycblt.auxio.playback.ui
import android.view.ViewGroup import android.view.ViewGroup
import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.LifecycleOwner
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import kotlin.jvm.internal.Intrinsics import kotlin.jvm.internal.Intrinsics
import org.oxycblt.auxio.databinding.ItemPlaybackSongBinding import org.oxycblt.auxio.databinding.ItemPlaybackSongBinding
import org.oxycblt.auxio.list.adapter.FlexibleListAdapter import org.oxycblt.auxio.list.adapter.FlexibleListAdapter
import org.oxycblt.auxio.list.recycler.DialogRecyclerView
import org.oxycblt.auxio.music.Song import org.oxycblt.auxio.music.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.auxio.music.resolveNames
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater
/** @author Koitharu, Alexander Capehart (OxygenCobalt) */ /** @author Koitharu, Alexander Capehart (OxygenCobalt) */
class PlaybackPagerAdapter(private val listener: Listener) : FlexibleListAdapter<Song, CoverViewHolder>(CoverViewHolder.DIFF_CALLBACK) { class PlaybackPagerAdapter(private val listener: Listener) :
FlexibleListAdapter<Song, CoverViewHolder>(CoverViewHolder.DIFF_CALLBACK) {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CoverViewHolder { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CoverViewHolder {
return CoverViewHolder.from(parent) return CoverViewHolder.from(parent)
} }
@ -48,8 +47,11 @@ class PlaybackPagerAdapter(private val listener: Listener) : FlexibleListAdapter
interface Listener { interface Listener {
fun navigateToCurrentArtist() fun navigateToCurrentArtist()
fun navigateToCurrentAlbum() fun navigateToCurrentAlbum()
fun navigateToCurrentSong() fun navigateToCurrentSong()
fun navigateToMenu() fun navigateToMenu()
} }
} }
@ -69,6 +71,7 @@ class CoverViewHolder private constructor(private val binding: ItemPlaybackSongB
*/ */
fun bind(item: Song, listener: PlaybackPagerAdapter.Listener) { fun bind(item: Song, listener: PlaybackPagerAdapter.Listener) {
val context = binding.root.context val context = binding.root.context
binding.playbackCover.bind(item)
// binding.playbackCover.bind(item) // binding.playbackCover.bind(item)
binding.playbackSong.apply { binding.playbackSong.apply {
text = item.name.resolve(context) text = item.name.resolve(context)