From 69fead70d13fac3f2a34dc9b7c849088ddd0364e Mon Sep 17 00:00:00 2001 From: rebelonion <87634197+rebelonion@users.noreply.github.com> Date: Thu, 8 Feb 2024 05:24:51 -0600 Subject: [PATCH] fix: crash on softsub download --- .../dantotsu/media/anime/SelectorDialogFragment.kt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/ani/dantotsu/media/anime/SelectorDialogFragment.kt b/app/src/main/java/ani/dantotsu/media/anime/SelectorDialogFragment.kt index a00253ea..e016dc29 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/SelectorDialogFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/SelectorDialogFragment.kt @@ -1,6 +1,7 @@ package ani.dantotsu.media.anime import android.annotation.SuppressLint +import android.app.Activity import android.app.AlertDialog import android.content.DialogInterface import android.content.Intent @@ -316,6 +317,7 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { val subtitles = extractor.subtitles val subtitleNames = subtitles.map { it.language } var subtitleToDownload: Subtitle? = null + val activity = currActivity()?:requireActivity() if (subtitles.isNotEmpty()) { val alertDialog = AlertDialog.Builder(context, R.style.MyPopup) .setTitle("Download Subtitle") @@ -329,7 +331,7 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { dialog?.dismiss() if (selectedVideo != null) { Helper.startAnimeDownloadService( - currActivity()!!, + activity, media!!.mainName(), episode.number, selectedVideo, @@ -337,7 +339,7 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { media, episode.thumb?.url ?: media!!.banner ?: media!!.cover ) - broadcastDownloadStarted(episode.number) + broadcastDownloadStarted(episode.number, activity) } else { snackString("No Video Selected") } @@ -354,7 +356,7 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { media, episode.thumb?.url ?: media!!.banner ?: media!!.cover ) - broadcastDownloadStarted(episode.number) + broadcastDownloadStarted(episode.number, activity) } else { snackString("No Video Selected") } @@ -378,7 +380,7 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { media, episode.thumb?.url ?: media!!.banner ?: media!!.cover ) - broadcastDownloadStarted(episode.number) + broadcastDownloadStarted(episode.number, activity) } else { snackString("No Video Selected") } @@ -399,11 +401,11 @@ class SelectorDialogFragment : BottomSheetDialogFragment() { binding.urlQuality.text = extractor.server.name } - private fun broadcastDownloadStarted(episodeNumber: String) { + private fun broadcastDownloadStarted(episodeNumber: String, activity: Activity) { val intent = Intent(AnimeWatchFragment.ACTION_DOWNLOAD_STARTED).apply { putExtra(AnimeWatchFragment.EXTRA_EPISODE_NUMBER, episodeNumber) } - requireActivity().sendBroadcast(intent) + activity.sendBroadcast(intent) } override fun getItemCount(): Int = extractor.videos.size