fix: request storage permission for novels
This commit is contained in:
parent
594b71dc16
commit
dd994dcfab
5 changed files with 40 additions and 20 deletions
|
@ -434,7 +434,7 @@ class AnimeWatchFragment : Fragment() {
|
|||
isDownload = true
|
||||
)
|
||||
} else {
|
||||
snackString("Permission is required to download")
|
||||
snackString(getString(R.string.download_permission_required))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -490,7 +490,7 @@ open class MangaReadFragment : Fragment(), ScanlatorSelectionListener {
|
|||
if (success) {
|
||||
continueDownload()
|
||||
} else {
|
||||
snackString("Permission is required to download")
|
||||
snackString(getString(R.string.download_permission_required))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -20,6 +20,7 @@ import androidx.fragment.app.activityViewModels
|
|||
import androidx.lifecycle.lifecycleScope
|
||||
import androidx.recyclerview.widget.ConcatAdapter
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import ani.dantotsu.R
|
||||
import ani.dantotsu.currContext
|
||||
import ani.dantotsu.databinding.FragmentAnimeWatchBinding
|
||||
import ani.dantotsu.download.DownloadedType
|
||||
|
@ -27,12 +28,16 @@ import ani.dantotsu.download.DownloadsManager
|
|||
import ani.dantotsu.download.novel.NovelDownloaderService
|
||||
import ani.dantotsu.download.novel.NovelServiceDataSingleton
|
||||
import ani.dantotsu.media.Media
|
||||
import ani.dantotsu.media.MediaDetailsActivity
|
||||
import ani.dantotsu.media.MediaDetailsViewModel
|
||||
import ani.dantotsu.media.MediaType
|
||||
import ani.dantotsu.media.novel.novelreader.NovelReaderActivity
|
||||
import ani.dantotsu.navBarHeight
|
||||
import ani.dantotsu.parsers.ShowResponse
|
||||
import ani.dantotsu.snackString
|
||||
import ani.dantotsu.util.Logger
|
||||
import ani.dantotsu.util.StoragePermissions
|
||||
import ani.dantotsu.util.StoragePermissions.Companion.accessAlertDialog
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
|
@ -62,6 +67,8 @@ class NovelReadFragment : Fragment(),
|
|||
|
||||
override fun downloadTrigger(novelDownloadPackage: NovelDownloadPackage) {
|
||||
Logger.log("novel link: ${novelDownloadPackage.link}")
|
||||
activity?.let {
|
||||
fun continueDownload() {
|
||||
val downloadTask = NovelDownloaderService.DownloadTask(
|
||||
title = media.mainName(),
|
||||
chapter = novelDownloadPackage.novelName,
|
||||
|
@ -81,7 +88,19 @@ class NovelReadFragment : Fragment(),
|
|||
}
|
||||
NovelServiceDataSingleton.isServiceRunning = true
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
if (!StoragePermissions.hasDirAccess(it)) {
|
||||
(it as MediaDetailsActivity).accessAlertDialog(it.launcher) { success ->
|
||||
if (success) {
|
||||
continueDownload()
|
||||
} else {
|
||||
snackString(getString(R.string.download_permission_required))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
continueDownload()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -65,7 +65,7 @@ internal class ExtensionGithubApi {
|
|||
val repos =
|
||||
PrefManager.getVal<Set<String>>(PrefName.MangaExtensionRepos).toMutableList()
|
||||
if (repos.isEmpty()) {
|
||||
repos.add("https://raw.githubusercontent.com/keiyoushi/extensions/main")
|
||||
repos.add("https://raw.githubusercontent.com/aniyomiorg/aniyomi-extensions/repo")
|
||||
PrefManager.setVal(PrefName.MangaExtensionRepos, repos.toSet())
|
||||
}
|
||||
|
||||
|
|
|
@ -886,4 +886,5 @@ Non quae tempore quo provident laudantium qui illo dolor vel quia dolor et exerc
|
|||
<string name="report">Report</string>
|
||||
<string name="ban">Ban</string>
|
||||
<string name="voice_actors">Voice Actors</string>
|
||||
<string name="download_permission_required">Permission is required to download</string>
|
||||
</resources>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue