From d7372d4dbb2c27ca145494db876a2174a6725150 Mon Sep 17 00:00:00 2001 From: Finnley Somdahl <87634197+rebelonion@users.noreply.github.com> Date: Sun, 19 Nov 2023 20:47:43 -0600 Subject: [PATCH] move CoroutineScopes for clarity --- app/src/main/AndroidManifest.xml | 6 ++++- app/src/main/java/ani/dantotsu/App.kt | 27 +++++++++++++++++++ .../main/java/ani/dantotsu/MainActivity.kt | 16 +---------- build.gradle | 2 +- 4 files changed, 34 insertions(+), 17 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8f3636aa..1a751200 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -263,12 +263,16 @@ - + \ No newline at end of file diff --git a/app/src/main/java/ani/dantotsu/App.kt b/app/src/main/java/ani/dantotsu/App.kt index 49a50aac..09ab279b 100644 --- a/app/src/main/java/ani/dantotsu/App.kt +++ b/app/src/main/java/ani/dantotsu/App.kt @@ -11,16 +11,27 @@ import ani.dantotsu.aniyomi.anime.custom.PreferenceModule import eu.kanade.tachiyomi.data.notification.Notifications import tachiyomi.core.util.system.logcat import ani.dantotsu.others.DisabledReports +import ani.dantotsu.parsers.AnimeSources +import ani.dantotsu.parsers.MangaSources import com.google.android.material.color.DynamicColors import com.google.firebase.crashlytics.ktx.crashlytics import com.google.firebase.ktx.Firebase +import eu.kanade.tachiyomi.extension.anime.AnimeExtensionManager +import eu.kanade.tachiyomi.extension.manga.MangaExtensionManager +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.flow.first +import kotlinx.coroutines.launch import logcat.AndroidLogcatLogger import logcat.LogPriority import logcat.LogcatLogger import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get @SuppressLint("StaticFieldLeak") class App : MultiDexApplication() { + private lateinit var animeExtensionManager: AnimeExtensionManager + private lateinit var mangaExtensionManager: MangaExtensionManager override fun attachBaseContext(base: Context?) { super.attachBaseContext(base) MultiDex.install(this) @@ -52,6 +63,22 @@ class App : MultiDexApplication() { LogcatLogger.install(AndroidLogcatLogger(LogPriority.VERBOSE)) } + animeExtensionManager = Injekt.get() + mangaExtensionManager = Injekt.get() + + val animeScope = CoroutineScope(Dispatchers.Default) + animeScope.launch { + animeExtensionManager.findAvailableExtensions() + logger("Anime Extensions: ${animeExtensionManager.installedExtensionsFlow.first()}") + AnimeSources.init(animeExtensionManager.installedExtensionsFlow) + } + val mangaScope = CoroutineScope(Dispatchers.Default) + mangaScope.launch { + mangaExtensionManager.findAvailableExtensions() + logger("Manga Extensions: ${mangaExtensionManager.installedExtensionsFlow.first()}") + MangaSources.init(mangaExtensionManager.installedExtensionsFlow) + } + } private fun setupNotificationChannels() { diff --git a/app/src/main/java/ani/dantotsu/MainActivity.kt b/app/src/main/java/ani/dantotsu/MainActivity.kt index cd0a5184..f3fc77f2 100644 --- a/app/src/main/java/ani/dantotsu/MainActivity.kt +++ b/app/src/main/java/ani/dantotsu/MainActivity.kt @@ -77,8 +77,7 @@ class MainActivity : AppCompatActivity() { private var load = false private var uiSettings = UserInterfaceSettings() - private val animeExtensionManager: AnimeExtensionManager = Injekt.get() - private val mangaExtensionManager: MangaExtensionManager = Injekt.get() + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) ThemeManager(this).applyTheme() @@ -103,19 +102,6 @@ class MainActivity : AppCompatActivity() { } - val animeScope = CoroutineScope(Dispatchers.Default) - animeScope.launch { - animeExtensionManager.findAvailableExtensions() - logger("Anime Extensions: ${animeExtensionManager.installedExtensionsFlow.first()}") - AnimeSources.init(animeExtensionManager.installedExtensionsFlow) - } - val mangaScope = CoroutineScope(Dispatchers.Default) - mangaScope.launch { - mangaExtensionManager.findAvailableExtensions() - logger("Manga Extensions: ${mangaExtensionManager.installedExtensionsFlow.first()}") - MangaSources.init(mangaExtensionManager.installedExtensionsFlow) - } - var doubleBackToExitPressedOnce = false onBackPressedDispatcher.addCallback(this) { if (doubleBackToExitPressedOnce) { diff --git a/build.gradle b/build.gradle index 5d8be535..70b2c070 100644 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:8.1.2' + classpath 'com.android.tools.build:gradle:8.1.3' classpath 'com.google.gms:google-services:4.4.0' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"