From 823860a56fe0657d41cc96023c20525daacc74b3 Mon Sep 17 00:00:00 2001 From: Ahmad Ansori Palembani Date: Sun, 8 Dec 2024 08:09:37 +0700 Subject: [PATCH] chore(manga): Try not to use GlobalScope as much as possible --- .../main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt b/app/src/main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt index 49f19a1fef..5680c5f2d9 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt @@ -191,6 +191,7 @@ suspend fun Manga.addOrRemoveToFavorites( migrateManga = { source, faved -> onMangaAdded(source to faved) }, + scope = scope, ) return null } @@ -376,6 +377,8 @@ private suspend fun showAddDuplicateDialog( controller: Controller, addManga: suspend () -> Unit, migrateManga: (Long, Boolean) -> Unit, + @OptIn(DelicateCoroutinesApi::class) + scope: CoroutineScope = GlobalScope, ) = withUIContext { val source = sourceManager.getOrStub(libraryManga.source) @@ -385,7 +388,7 @@ private suspend fun showAddDuplicateDialog( val enabled = titles.indices.map { listView.isItemChecked(it) }.toTypedArray() val flags = MigrationFlags.getFlagsFromPositions(enabled, libraryManga) val enhancedServices by lazy { Injekt.get().services.filterIsInstance() } - launchUI { + scope.launchUI { MigrationProcessAdapter.migrateMangaInternal( flags, enhancedServices, @@ -415,7 +418,7 @@ private suspend fun showAddDuplicateDialog( MangaDetailsController(libraryManga) .withFadeTransaction(), ) - 1 -> launchIO { addManga() } + 1 -> scope.launchIO { addManga() } 2 -> { if (!newManga.initialized) { activity.toast(MR.strings.must_view_details_before_migration, Toast.LENGTH_LONG)