From 02a5c0c2535b1047ec87c3439a60383155d59eaf Mon Sep 17 00:00:00 2001
From: zaednasr <75589932+zaednasr@users.noreply.github.com>
Date: Sat, 19 Oct 2024 13:36:01 +0200
Subject: [PATCH] change fastlane version
---
.../database/repository/DownloadRepository.kt | 4 ++++
.../database/viewmodel/DownloadViewModel.kt | 9 +++++++++
.../ui/downloads/DownloadQueueMainFragment.kt | 5 +++++
.../ytdl/util/extractors/YTDLPUtil.kt | 20 ++++++++++++++-----
.../main/res/drawable/baseline_filter_alt.xml | 5 +++++
app/src/main/res/menu/download_queue_menu.xml | 6 ++++++
app/src/main/res/menu/history_menu.xml | 2 +-
app/src/main/res/values/strings.xml | 1 +
app/src/main/res/xml/general_preferences.xml | 14 +++++++++++++
.../changelogs/{10300.txt => 103000000.txt} | 0
.../changelogs/{10500.txt => 105000000.txt} | 0
.../changelogs/{10600.txt => 106000000.txt} | 0
.../changelogs/{10610.txt => 106010000.txt} | 0
.../changelogs/{10620.txt => 106020000.txt} | 0
.../changelogs/{10630.txt => 106030000.txt} | 0
.../changelogs/{10640.txt => 106040000.txt} | 0
.../changelogs/{10650.txt => 106050000.txt} | 0
.../changelogs/{10660.txt => 106060000.txt} | 0
.../changelogs/{10670.txt => 106070000.txt} | 0
.../changelogs/{10680.txt => 106080000.txt} | 0
.../changelogs/{10690.txt => 106090000.txt} | 0
.../changelogs/{10700.txt => 107000000.txt} | 0
.../changelogs/{10710.txt => 107010000.txt} | 0
.../changelogs/{10720.txt => 107020000.txt} | 0
.../changelogs/{10730.txt => 107030000.txt} | 0
.../changelogs/{10731.txt => 107030100.txt} | 0
.../changelogs/{10740.txt => 107040000.txt} | 0
.../changelogs/{10750.txt => 107050000.txt} | 0
.../changelogs/{10760.txt => 107060000.txt} | 0
.../changelogs/{10770.txt => 107070000.txt} | 0
.../changelogs/{10780.txt => 107080000.txt} | 0
.../changelogs/{10790.txt => 107090000.txt} | 0
.../changelogs/{10791.txt => 107090100.txt} | 0
.../changelogs/{10792.txt => 107090200.txt} | 0
34 files changed, 60 insertions(+), 6 deletions(-)
create mode 100644 app/src/main/res/drawable/baseline_filter_alt.xml
rename fastlane/metadata/android/en-US/changelogs/{10300.txt => 103000000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10500.txt => 105000000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10600.txt => 106000000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10610.txt => 106010000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10620.txt => 106020000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10630.txt => 106030000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10640.txt => 106040000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10650.txt => 106050000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10660.txt => 106060000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10670.txt => 106070000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10680.txt => 106080000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10690.txt => 106090000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10700.txt => 107000000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10710.txt => 107010000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10720.txt => 107020000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10730.txt => 107030000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10731.txt => 107030100.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10740.txt => 107040000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10750.txt => 107050000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10760.txt => 107060000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10770.txt => 107070000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10780.txt => 107080000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10790.txt => 107090000.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10791.txt => 107090100.txt} (100%)
rename fastlane/metadata/android/en-US/changelogs/{10792.txt => 107090200.txt} (100%)
diff --git a/app/src/main/java/com/deniscerri/ytdl/database/repository/DownloadRepository.kt b/app/src/main/java/com/deniscerri/ytdl/database/repository/DownloadRepository.kt
index 729ee416..0f24b71f 100644
--- a/app/src/main/java/com/deniscerri/ytdl/database/repository/DownloadRepository.kt
+++ b/app/src/main/java/com/deniscerri/ytdl/database/repository/DownloadRepository.kt
@@ -89,6 +89,10 @@ class DownloadRepository(private val downloadDao: DownloadDao) {
return downloadDao.insertAll(items)
}
+ suspend fun deleteAll() {
+ downloadDao.deleteAll()
+ }
+
suspend fun delete(id: Long){
val item = getItemByID(id)
downloadDao.delete(id)
diff --git a/app/src/main/java/com/deniscerri/ytdl/database/viewmodel/DownloadViewModel.kt b/app/src/main/java/com/deniscerri/ytdl/database/viewmodel/DownloadViewModel.kt
index 98fcd8dc..89a7e895 100644
--- a/app/src/main/java/com/deniscerri/ytdl/database/viewmodel/DownloadViewModel.kt
+++ b/app/src/main/java/com/deniscerri/ytdl/database/viewmodel/DownloadViewModel.kt
@@ -1247,7 +1247,16 @@ class DownloadViewModel(private val application: Application) : AndroidViewModel
}
}
+ fun deleteAll() = viewModelScope.launch {
+ cancelAllDownloadsImpl()
+ repository.deleteAll()
+ }
+
fun cancelAllDownloads() = viewModelScope.launch {
+ cancelAllDownloadsImpl()
+ }
+
+ private suspend fun cancelAllDownloadsImpl() {
WorkManager.getInstance(application).cancelAllWorkByTag("download")
val activeAndQueued = withContext(Dispatchers.IO){
repository.getActiveAndQueuedDownloadIDs()
diff --git a/app/src/main/java/com/deniscerri/ytdl/ui/downloads/DownloadQueueMainFragment.kt b/app/src/main/java/com/deniscerri/ytdl/ui/downloads/DownloadQueueMainFragment.kt
index 828e244e..f7c72749 100644
--- a/app/src/main/java/com/deniscerri/ytdl/ui/downloads/DownloadQueueMainFragment.kt
+++ b/app/src/main/java/com/deniscerri/ytdl/ui/downloads/DownloadQueueMainFragment.kt
@@ -207,6 +207,11 @@ class DownloadQueueMainFragment : Fragment(){
topAppBar.setOnMenuItemClickListener { m: MenuItem ->
try{
when(m.itemId){
+ R.id.clear_all -> {
+ showDeleteDialog {
+ downloadViewModel.deleteAll()
+ }
+ }
R.id.clear_queue -> {
showDeleteDialog {
downloadViewModel.cancelAllDownloads()
diff --git a/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt b/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt
index a34d759a..290aa566 100644
--- a/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt
+++ b/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt
@@ -744,12 +744,14 @@ class YTDLPUtil(private val context: Context) {
}
request.addOption("-x")
- val formatSorting = StringBuilder("hasaud,size")
+ val formatSorting = StringBuilder("hasaud")
if (abrSort.isNotBlank()){
formatSorting.append(",abr:${abrSort}")
}
+ formatSorting.append(",size")
+
if (aCodecPref.isNotBlank()){
formatSorting.append(",acodec:$aCodecPref")
}
@@ -1098,16 +1100,24 @@ class YTDLPUtil(private val context: Context) {
}
private fun getYoutubeExtractorArgs() : String {
- var extractorArgs = "player_client=default,mediaconnect"
+ val playerClient = sharedPreferences.getString("youtube_player_client", "default,mediaconnect")!!
+ .ifEmpty { "default,mediaconnect" }
+ val extractorArgs = mutableListOf()
+ extractorArgs.add("player_client:${playerClient}")
val lang = sharedPreferences.getString("app_language", "en")
if (context.getStringArray(R.array.subtitle_langs).contains(lang)) {
- extractorArgs += ";lang=$lang"
+ extractorArgs.add("lang=$lang")
}
val poToken = sharedPreferences.getString("youtube_po_token", "")!!
if (poToken.isNotBlank()) {
- extractorArgs += ";po_token=web+$poToken"
+ extractorArgs.add("po_token=web+$poToken")
}
- return extractorArgs
+ val otherArgs = sharedPreferences.getString("youtube_other_extractor_args", "")!!
+ if (otherArgs.isNotBlank()) {
+ extractorArgs.add(otherArgs)
+ }
+
+ return extractorArgs.joinToString(";")
}
}
\ No newline at end of file
diff --git a/app/src/main/res/drawable/baseline_filter_alt.xml b/app/src/main/res/drawable/baseline_filter_alt.xml
new file mode 100644
index 00000000..1888bb72
--- /dev/null
+++ b/app/src/main/res/drawable/baseline_filter_alt.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/app/src/main/res/menu/download_queue_menu.xml b/app/src/main/res/menu/download_queue_menu.xml
index d31d5835..2946873b 100644
--- a/app/src/main/res/menu/download_queue_menu.xml
+++ b/app/src/main/res/menu/download_queue_menu.xml
@@ -34,6 +34,12 @@
android:title="@string/clear_saved"
app:showAsAction="never" />
+
+
- Status
Deleted
Websites
+ Other YouTube Extractor Arguments
\ No newline at end of file
diff --git a/app/src/main/res/xml/general_preferences.xml b/app/src/main/res/xml/general_preferences.xml
index 846f9c9d..0b3fe383 100644
--- a/app/src/main/res/xml/general_preferences.xml
+++ b/app/src/main/res/xml/general_preferences.xml
@@ -102,6 +102,13 @@
app:useSimpleSummaryProvider="true"
app:title="@string/format_source" />
+
+
+
+