Skip to content
Snippets Groups Projects
Commit fbea3a05 authored by Nicolas Pomepuy's avatar Nicolas Pomepuy Committed by Geoffrey Métais
Browse files

Open a playlist from home screen

parent e67584ee
No related branches found
No related tags found
No related merge requests found
......@@ -28,10 +28,12 @@ import android.graphics.Bitmap
import android.graphics.drawable.BitmapDrawable
import android.net.Uri
import android.os.Build
import android.provider.MediaStore.Video.VideoColumns.CATEGORY
import android.text.TextUtils
import android.view.View
import androidx.annotation.RequiresApi
import androidx.core.content.ContextCompat
import androidx.core.content.ContextCompat.startActivity
import androidx.fragment.app.FragmentActivity
import androidx.leanback.app.BackgroundManager
import androidx.leanback.widget.DiffCallback
......@@ -56,6 +58,7 @@ import org.videolan.vlc.util.*
import org.videolan.vlc.viewmodels.BaseModel
import org.videolan.vlc.viewmodels.browser.BrowserModel
import kotlin.collections.ArrayList
@ExperimentalCoroutinesApi
@ObsoleteCoroutinesApi
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
......@@ -292,6 +295,7 @@ object TvUtil {
fun openAudioCategory(context: Activity, mediaLibraryItem: MediaLibraryItem) {
when {
mediaLibraryItem.itemType == MediaLibraryItem.TYPE_ALBUM -> playAudioList(context, mediaLibraryItem.tracks, 0)
mediaLibraryItem.itemType == MediaLibraryItem.TYPE_PLAYLIST -> playAudioList(context, mediaLibraryItem.tracks, 0)
mediaLibraryItem.itemType == MediaLibraryItem.TYPE_MEDIA -> {
val list = ArrayList<MediaWrapper>().apply { add(mediaLibraryItem as MediaWrapper) }
playAudioList(context, list, 0)
......
......@@ -69,10 +69,10 @@ class MainTvModel(app: Application) : AndroidViewModel(app), Medialibrary.OnMedi
private set
// LiveData
private val favorites: LiveData<List<BrowserFav>> = browserFavRepository.browserFavorites
val videos : LiveData<List<MediaLibraryItem>> = MutableLiveData()
val audioCategories : LiveData<List<MediaLibraryItem>> = MutableLiveData()
val browsers : LiveData<List<MediaLibraryItem>> = MutableLiveData()
val history : LiveData<List<MediaWrapper>> = MutableLiveData()
val videos: LiveData<List<MediaLibraryItem>> = MutableLiveData()
val audioCategories: LiveData<List<MediaLibraryItem>> = MutableLiveData()
val browsers: LiveData<List<MediaLibraryItem>> = MutableLiveData()
val history: LiveData<List<MediaWrapper>> = MutableLiveData()
val playlist: LiveData<List<MediaLibraryItem>> = MutableLiveData()
private val nowPlayingDelegate = NowPlayingDelegate(this)
......@@ -238,7 +238,7 @@ class MainTvModel(app: Application) : AndroidViewModel(app), Medialibrary.OnMedi
fun Fragment.getMainTvModel() = ViewModelProviders.of(requireActivity(), Factory(requireActivity().application)).get(MainTvModel::class.java)
}
class Factory(private val app: Application): ViewModelProvider.NewInstanceFactory() {
class Factory(private val app: Application) : ViewModelProvider.NewInstanceFactory() {
override fun <T : ViewModel> create(modelClass: Class<T>): T {
@Suppress("UNCHECKED_CAST")
return MainTvModel(app) as T
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment