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" /> + + + +