diff --git a/app/src/main/java/com/github/libretube/api/PlaylistsHelper.kt b/app/src/main/java/com/github/libretube/api/PlaylistsHelper.kt index 45cebe446..b8c786160 100644 --- a/app/src/main/java/com/github/libretube/api/PlaylistsHelper.kt +++ b/app/src/main/java/com/github/libretube/api/PlaylistsHelper.kt @@ -1,6 +1,5 @@ package com.github.libretube.api -import android.content.Context import androidx.core.text.isDigitsOnly import com.github.libretube.api.obj.Playlist import com.github.libretube.api.obj.PlaylistId @@ -179,8 +178,7 @@ object PlaylistsHelper { } } - suspend fun clonePlaylist(context: Context, playlistId: String): String? { - val appContext = context.applicationContext + suspend fun clonePlaylist(playlistId: String): String? { if (!loggedIn) { val playlist = RetrofitInstance.api.getPlaylist(playlistId) val newPlaylist = createPlaylist(playlist.name ?: "Unknown name") ?: return null diff --git a/app/src/main/java/com/github/libretube/ui/dialogs/CreatePlaylistDialog.kt b/app/src/main/java/com/github/libretube/ui/dialogs/CreatePlaylistDialog.kt index 960a9e28e..9b380ecf8 100644 --- a/app/src/main/java/com/github/libretube/ui/dialogs/CreatePlaylistDialog.kt +++ b/app/src/main/java/com/github/libretube/ui/dialogs/CreatePlaylistDialog.kt @@ -30,7 +30,7 @@ class CreatePlaylistDialog( requireDialog().hide() val playlistId = withContext(Dispatchers.IO) { runCatching { - PlaylistsHelper.clonePlaylist(requireContext(), it) + PlaylistsHelper.clonePlaylist(it) }.getOrNull() } if (playlistId != null) { diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlaylistFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlaylistFragment.kt index 0a0afa3d1..81d6607e8 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlaylistFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlaylistFragment.kt @@ -237,29 +237,19 @@ class PlaylistFragment : Fragment() { } private fun showPlaylistVideos(playlist: Playlist) { - val videos = if (playlistType == PlaylistType.PUBLIC) { - playlistFeed - } else { - when (selectedSortOrder) { - 0, 1 -> { - if (playlistType == PlaylistType.LOCAL) { - playlistFeed.sortedBy { - it.url.orEmpty().toInt() - } - } else { - playlistFeed - } - } - 2, 3 -> { - playlistFeed.sortedBy { it.duration } - } - 4, 5 -> { - playlistFeed.sortedBy { it.title } - } - else -> throw IllegalArgumentException() - }.let { - if (selectedSortOrder % 2 == 0) it else it.reversed() + val videos = when { + selectedSortOrder in listOf(0, 1) || playlistType == PlaylistType.PUBLIC -> { + playlistFeed } + selectedSortOrder in listOf(2, 3) -> { + playlistFeed.sortedBy { it.duration } + } + selectedSortOrder in listOf(4, 5) -> { + playlistFeed.sortedBy { it.title } + } + else -> throw IllegalArgumentException() + }.let { + if (selectedSortOrder % 2 == 0) it else it.reversed() } playlistAdapter = PlaylistAdapter(videos.toMutableList(), playlistId!!, playlistType) diff --git a/app/src/main/java/com/github/libretube/ui/sheets/PlaylistOptionsBottomSheet.kt b/app/src/main/java/com/github/libretube/ui/sheets/PlaylistOptionsBottomSheet.kt index 56b35e73d..3fbf4164b 100644 --- a/app/src/main/java/com/github/libretube/ui/sheets/PlaylistOptionsBottomSheet.kt +++ b/app/src/main/java/com/github/libretube/ui/sheets/PlaylistOptionsBottomSheet.kt @@ -69,7 +69,7 @@ class PlaylistOptionsBottomSheet( val context = requireContext() val playlistId = withContext(Dispatchers.IO) { runCatching { - PlaylistsHelper.clonePlaylist(context, playlistId) + PlaylistsHelper.clonePlaylist(playlistId) }.getOrNull() } context.toastFromMainDispatcher(