Add download long press menu action

This commit is contained in:
Stypox 2025-02-11 18:37:00 +01:00
parent ee0f98f9ae
commit b213a46399
No known key found for this signature in database
GPG Key ID: 4BDF1B40A49FDD23

View File

@ -21,6 +21,7 @@ import androidx.compose.ui.graphics.vector.ImageVector
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import org.schabi.newpipe.R
import org.schabi.newpipe.database.stream.model.StreamEntity
import org.schabi.newpipe.download.DownloadDialog
import org.schabi.newpipe.error.ErrorInfo
import org.schabi.newpipe.error.ErrorUtil
import org.schabi.newpipe.error.UserAction
@ -110,7 +111,16 @@ data class LongPressAction(
return buildPlayerActionList { SinglePlayQueue(item) } +
buildShareActionList(item) +
listOf(
Type.Download.buildAction { context -> /* TODO */ },
Type.Download.buildAction { context ->
SparseItemUtil.fetchStreamInfoAndSaveToDatabase(
context, item.serviceId, item.url
) { info ->
val downloadDialog = DownloadDialog(context, info)
val fragmentManager = context.findFragmentActivity()
.supportFragmentManager
downloadDialog.show(fragmentManager, "downloadDialog")
}
},
Type.AddToPlaylist.buildAction { context ->
PlaylistDialog.createCorrespondingDialog(
context,