Fix album style & search
This commit is contained in:
parent
eee663f717
commit
393bd59a1c
11 changed files with 42 additions and 31 deletions
|
@ -52,7 +52,6 @@ class HomeAdapter(
|
|||
}
|
||||
|
||||
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
|
||||
println("ViewType ${getItemViewType(position)}")
|
||||
when (getItemViewType(position)) {
|
||||
RECENT_ALBUMS -> {
|
||||
val viewHolder = holder as AlbumViewHolder
|
||||
|
|
|
@ -9,7 +9,9 @@ import androidx.recyclerview.widget.RecyclerView
|
|||
import code.name.monkey.appthemehelper.ThemeStore
|
||||
import code.name.monkey.retromusic.R
|
||||
import code.name.monkey.retromusic.adapter.base.MediaEntryViewHolder
|
||||
import code.name.monkey.retromusic.glide.AlbumGlideRequest
|
||||
import code.name.monkey.retromusic.glide.ArtistGlideRequest
|
||||
import code.name.monkey.retromusic.glide.RetroMusicColoredTarget
|
||||
import code.name.monkey.retromusic.helper.MusicPlayerRemote
|
||||
import code.name.monkey.retromusic.helper.menu.SongMenuHelper
|
||||
import code.name.monkey.retromusic.loaders.PlaylistSongsLoader
|
||||
|
@ -60,8 +62,17 @@ class SearchAdapter(
|
|||
val album = dataSet?.get(position) as Album
|
||||
holder.title?.text = album.title
|
||||
holder.text?.text = album.artist
|
||||
/*SongGlideRequest.Builder.from(Glide.with(activity), album.safeGetFirstSong())
|
||||
.checkIgnoreMediaStore(activity).build().into(holder.image)*/
|
||||
holder.image?.let {
|
||||
AlbumGlideRequest.Builder(Glide.with(activity), album.id)
|
||||
.generatePalette(activity)
|
||||
.build()
|
||||
.dontAnimate()
|
||||
.dontTransform()
|
||||
.into(object : RetroMusicColoredTarget(it) {
|
||||
override fun onColorReady(color: Int) {
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
ARTIST -> {
|
||||
val artist = dataSet?.get(position) as Artist
|
||||
|
@ -133,21 +144,24 @@ class SearchAdapter(
|
|||
val item = dataSet!![adapterPosition]
|
||||
when (itemViewType) {
|
||||
ALBUM -> {
|
||||
item as Album
|
||||
val options = ActivityOptions.makeSceneTransitionAnimation(
|
||||
activity,
|
||||
UtilPair.create(image, activity.getString(R.string.transition_album_art))
|
||||
)
|
||||
NavigationUtil.goToAlbumOptions(activity, (item as Album).id, options)
|
||||
NavigationUtil.goToAlbumOptions(activity, item.id, options)
|
||||
}
|
||||
ARTIST -> {
|
||||
item as Artist
|
||||
val options = ActivityOptions.makeSceneTransitionAnimation(
|
||||
activity,
|
||||
UtilPair.create(image, activity.getString(R.string.transition_artist_image))
|
||||
)
|
||||
NavigationUtil.goToArtistOptions(activity, (item as Artist).id, options)
|
||||
NavigationUtil.goToArtistOptions(activity, item.id, options)
|
||||
}
|
||||
GENRE -> {
|
||||
NavigationUtil.goToGenre(activity, item as Genre)
|
||||
item as Genre
|
||||
NavigationUtil.goToGenre(activity, item)
|
||||
}
|
||||
PLAYLIST -> {
|
||||
NavigationUtil.goToPlaylistNew(activity, item as Playlist)
|
||||
|
|
|
@ -28,7 +28,7 @@ import me.zhanghai.android.fastscroll.PopupTextProvider
|
|||
open class AlbumAdapter(
|
||||
protected val activity: AppCompatActivity,
|
||||
dataSet: List<Album>,
|
||||
protected var itemLayoutRes: Int,
|
||||
var itemLayoutRes: Int,
|
||||
cabHolder: CabHolder?
|
||||
) : AbsMultiSelectAdapter<AlbumAdapter.ViewHolder, Album>(
|
||||
activity,
|
||||
|
|
|
@ -44,19 +44,6 @@ class HorizontalAlbumAdapter(
|
|||
//setColors(color, holder)
|
||||
}
|
||||
})
|
||||
/*SongGlideRequest.Builder.from(Glide.with(activity), album.safeGetFirstSong())
|
||||
.checkIgnoreMediaStore(activity).generatePalette(activity).build()
|
||||
.into(object : RetroMusicColoredTarget(holder.image!!) {
|
||||
override fun onLoadCleared(placeholder: Drawable?) {
|
||||
super.onLoadCleared(placeholder)
|
||||
setColors(albumArtistFooterColor, holder)
|
||||
}
|
||||
|
||||
override fun onColorReady(color: Int) {
|
||||
if (usePalette) setColors(color, holder)
|
||||
else setColors(albumArtistFooterColor, holder)
|
||||
}
|
||||
})*/
|
||||
}
|
||||
|
||||
override fun getAlbumText(album: Album): String? {
|
||||
|
|
|
@ -30,7 +30,6 @@ class ArtistAdapter(
|
|||
val activity: AppCompatActivity,
|
||||
var dataSet: ArrayList<Artist>,
|
||||
var itemLayoutRes: Int,
|
||||
|
||||
cabHolder: CabHolder?
|
||||
) : AbsMultiSelectAdapter<ArtistAdapter.ViewHolder, Artist>(
|
||||
activity, cabHolder, R.menu.menu_media_selection
|
||||
|
|
|
@ -50,9 +50,10 @@ class AlbumGlideRequest {
|
|||
}
|
||||
|
||||
class Builder(val requestManager: RequestManager, val albumId: Long) {
|
||||
|
||||
fun from(requestManager: RequestManager, albumId: Long): Builder {
|
||||
return Builder(requestManager, albumId)
|
||||
companion object {
|
||||
fun from(requestManager: RequestManager, albumId: Long): Builder {
|
||||
return Builder(requestManager, albumId)
|
||||
}
|
||||
}
|
||||
|
||||
fun generatePalette(context: Context): PaletteBuilder {
|
||||
|
|
|
@ -18,7 +18,9 @@ import android.graphics.Bitmap;
|
|||
import androidx.palette.graphics.Palette;
|
||||
|
||||
public class BitmapPaletteWrapper {
|
||||
|
||||
private final Bitmap mBitmap;
|
||||
|
||||
private final Palette mPalette;
|
||||
|
||||
public BitmapPaletteWrapper(Bitmap bitmap, Palette palette) {
|
||||
|
|
|
@ -135,6 +135,11 @@ object AlbumLoader {
|
|||
albums.add(album)
|
||||
return album
|
||||
}
|
||||
|
||||
fun getAlbums(context: Context, paramString: String): List<Album> {
|
||||
return makeAlbumCursor(context, "album LIKE ?", arrayOf("$paramString%"))
|
||||
.mapList(true) { Album.fromCursor(this) }
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -44,6 +44,13 @@ object ArtistLoader {
|
|||
} ?: Artist()
|
||||
}
|
||||
|
||||
fun getArtists(context: Context, paramString: String): List<Artist> {
|
||||
return makeArtistCursor(context, "artist LIKE ?", arrayOf("$paramString%"))
|
||||
.mapList(true) {
|
||||
Artist.fromCursor(this)
|
||||
}
|
||||
}
|
||||
|
||||
private fun getArtists(cursor: Cursor?): ArrayList<Artist> {
|
||||
val artists = ArrayList<Artist>()
|
||||
if (cursor != null && cursor.moveToFirst()) {
|
||||
|
|
|
@ -16,8 +16,6 @@ package code.name.monkey.retromusic.loaders
|
|||
|
||||
import android.content.Context
|
||||
import code.name.monkey.retromusic.R
|
||||
import code.name.monkey.retromusic.model.Album
|
||||
import code.name.monkey.retromusic.model.Artist
|
||||
import code.name.monkey.retromusic.model.Genre
|
||||
import java.util.Locale
|
||||
|
||||
|
@ -31,13 +29,13 @@ object SearchLoader {
|
|||
results.addAll(songs)
|
||||
}
|
||||
|
||||
val artists = emptyArray<Artist>()//ArtistLoader.getArtists(context, searchString)
|
||||
val artists = ArtistLoader.getArtists(context, searchString)
|
||||
if (artists.isNotEmpty()) {
|
||||
results.add(context.resources.getString(R.string.artists))
|
||||
results.addAll(artists)
|
||||
}
|
||||
|
||||
val albums = emptyArray<Album>()//AlbumLoader.getAlbums(context, searchString)
|
||||
val albums = AlbumLoader.getAlbums(context, searchString)
|
||||
if (albums.isNotEmpty()) {
|
||||
results.add(context.resources.getString(R.string.albums))
|
||||
results.addAll(albums)
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
android:layout_gravity="center_vertical"
|
||||
android:gravity="center_vertical"
|
||||
android:scaleType="centerCrop"
|
||||
tools:srcCompat="@tools:sample/backgrounds/scenic[16]" />
|
||||
tools:srcCompat="@tools:sample/avatars" />
|
||||
|
||||
<com.google.android.material.textview.MaterialTextView
|
||||
android:id="@+id/imageText"
|
||||
|
@ -58,8 +58,7 @@
|
|||
android:minHeight="40dp"
|
||||
android:textAppearance="@style/TextViewSubtitle2"
|
||||
android:visibility="gone"
|
||||
tools:text="100"
|
||||
tools:visibility="visible" />
|
||||
tools:text="100" />
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
</FrameLayout>
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue