From 273ac8f9b8a82acdeb0a6b55eeba0a9adc9ed630 Mon Sep 17 00:00:00 2001 From: Cem Eren <2852343+omgcem@users.noreply.github.com> Date: Fri, 11 Mar 2022 19:35:18 +0100 Subject: [PATCH] Reused existing functions for track actions Updated existing functions with additional parameter so they can be used by context menu but added default value function so that existing calls on buttons can remain without parameters being passed in. --- .../fragment/TrackCollectionFragment.kt | 67 ++++--------------- 1 file changed, 14 insertions(+), 53 deletions(-) diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt index b8fa5b72..bbc9a963 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt @@ -247,9 +247,10 @@ open class TrackCollectionFragment : MultiListFragment() { super.onDestroyView() } - private fun playNow(append: Boolean) { - val selectedSongs = getSelectedSongs() - + private fun playNow( + append: Boolean, + selectedSongs: List = getSelectedSongs() + ) { if (selectedSongs.isNotEmpty()) { downloadHandler.download( this, append, false, !append, playNext = false, @@ -375,7 +376,10 @@ open class TrackCollectionFragment : MultiListFragment() { downloadBackground(save, songs) } - private fun downloadBackground(save: Boolean, songs: List) { + private fun downloadBackground( + save: Boolean, + songs: List + ) { val onValid = Runnable { networkAndStorageChecker.warnIfNetworkOrStorageUnavailable() mediaPlayerController.downloadBackground(songs, save) @@ -399,9 +403,7 @@ open class TrackCollectionFragment : MultiListFragment() { onValid.run() } - internal fun delete() { - val songs = getSelectedSongs() - + internal fun delete(songs: List = getSelectedSongs()) { Util.toast( context, resources.getQuantityString( @@ -412,8 +414,7 @@ open class TrackCollectionFragment : MultiListFragment() { mediaPlayerController.delete(songs) } - internal fun unpin() { - val songs = getSelectedSongs() + internal fun unpin(songs: List = getSelectedSongs()) { Util.toast( context, resources.getQuantityString( @@ -624,19 +625,11 @@ open class TrackCollectionFragment : MultiListFragment() { when (menuItem.itemId) { R.id.song_menu_play_now -> { - downloadHandler.download( - fragment = this, - append = false, - save = false, - autoPlay = true, - playNext = false, - shuffle = false, - songs = songs - ) + playNow(false, songs) } R.id.song_menu_play_next -> { downloadHandler.download( - fragment = this, + fragment = this@TrackCollectionFragment, append = true, save = false, autoPlay = false, @@ -646,47 +639,15 @@ open class TrackCollectionFragment : MultiListFragment() { ) } R.id.song_menu_play_last -> { - downloadHandler.download( - fragment = this, - append = true, - save = false, - autoPlay = false, - playNext = false, - shuffle = false, - songs = songs - ) + playNow(true, songs) } R.id.song_menu_pin -> { - toast( - context, - resources.getQuantityString( - R.plurals.select_album_n_songs_pinned, - songs.size, - songs.size - ) - ) downloadBackground(true, songs) } R.id.song_menu_unpin -> { - toast( - context, - resources.getQuantityString( - R.plurals.select_album_n_songs_unpinned, - songs.size, - songs.size - ) - ) - mediaPlayerController.unpin(songs) + unpin(songs) } R.id.song_menu_download -> { - toast( - context, - resources.getQuantityString( - R.plurals.select_album_n_songs_downloaded, - songs.size, - songs.size - ) - ) downloadBackground(false, songs) } R.id.select_album_play_all -> {