made app show single download card if one element from playlist is selected

pull/44/head
Denis Çerri 3 years ago
parent cc8614d175
commit 8a605c61ad
No known key found for this signature in database
GPG Key ID: 95C43D517D830350

@ -25,6 +25,7 @@ import com.deniscerri.ytdlnis.database.models.DownloadItem
import com.deniscerri.ytdlnis.database.models.Format
import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel
import com.deniscerri.ytdlnis.database.viewmodel.ResultViewModel
import com.deniscerri.ytdlnis.receiver.ShareActivity
import com.deniscerri.ytdlnis.util.FileUtil
import com.google.android.material.bottomappbar.BottomAppBar
import com.google.android.material.bottomsheet.BottomSheetBehavior
@ -174,17 +175,19 @@ class DownloadMultipleBottomSheetDialog(private val items: MutableList<DownloadI
override fun onCancel(dialog: DialogInterface) {
super.onCancel(dialog)
cleanDownloads()
cleanup()
}
override fun onDismiss(dialog: DialogInterface) {
super.onDismiss(dialog)
cleanDownloads()
cleanup()
}
private fun cleanDownloads(){
private fun cleanup(){
parentFragmentManager.beginTransaction().remove(parentFragmentManager.findFragmentByTag("downloadMultipleSheet")!!).commit()
downloadViewModel.deleteProcessing()
if (parentFragmentManager.fragments.size == 1){
(activity as ShareActivity).finish()
}
}
override fun onButtonClick(videoURL: String, type: String?) {

@ -5,6 +5,7 @@ import android.app.Dialog
import android.content.DialogInterface
import android.os.Bundle
import android.util.DisplayMetrics
import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.widget.Button
@ -20,6 +21,7 @@ import com.deniscerri.ytdlnis.database.models.DownloadItem
import com.deniscerri.ytdlnis.database.models.ResultItem
import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel
import com.deniscerri.ytdlnis.database.viewmodel.ResultViewModel
import com.deniscerri.ytdlnis.receiver.ShareActivity
import com.google.android.material.bottomsheet.BottomSheetBehavior
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import com.google.android.material.button.MaterialButton
@ -105,12 +107,18 @@ class SelectPlaylistItemsBottomSheetDialog(private val items: List<ResultItem>,
i.format = downloadViewModel.getLatestCommandTemplateAsFormat()
downloadItems.add(i)
}
val bottomSheet = DownloadMultipleBottomSheetDialog(downloadItems)
bottomSheet.show(parentFragmentManager, "downloadMultipleSheet")
if (downloadItems.size == 1){
val resultItem = resultViewModel.getItemByURL(items[0].url)
val bottomSheet = DownloadBottomSheetDialog(resultItem, type)
bottomSheet.show(parentFragmentManager, "downloadSingleSheet")
}else{
val bottomSheet = DownloadMultipleBottomSheetDialog(downloadItems)
bottomSheet.show(parentFragmentManager, "downloadMultipleSheet")
}
dismiss()
resultViewModel.deleteAll()
resultViewModel.insert(ArrayList(checkedResultItems))
}
dismiss()
}
}
@ -126,6 +134,9 @@ class SelectPlaylistItemsBottomSheetDialog(private val items: List<ResultItem>,
private fun cleanup(){
parentFragmentManager.beginTransaction().remove(parentFragmentManager.findFragmentByTag("downloadPlaylistSheet")!!).commit()
if (parentFragmentManager.fragments.size == 1){
(activity as ShareActivity).finish()
}
}

Loading…
Cancel
Save