From b8fbeed785f0ba183bd6d16cdebc11562247dc73 Mon Sep 17 00:00:00 2001 From: Finnley Somdahl <87634197+rebelonion@users.noreply.github.com> Date: Tue, 23 Jan 2024 14:15:04 -0600 Subject: [PATCH] check for activity context --- .../main/java/ani/dantotsu/home/AnimeFragment.kt | 13 +++++++++---- .../main/java/ani/dantotsu/home/MangaFragment.kt | 13 +++++++++---- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/ani/dantotsu/home/AnimeFragment.kt b/app/src/main/java/ani/dantotsu/home/AnimeFragment.kt index 53e91748..afc00484 100644 --- a/app/src/main/java/ani/dantotsu/home/AnimeFragment.kt +++ b/app/src/main/java/ani/dantotsu/home/AnimeFragment.kt @@ -268,14 +268,19 @@ class AnimeFragment : Fragment() { model.loaded = true model.loadTrending(1) model.loadUpdated() - model.loadPopular("ANIME", sort = Anilist.sortBy[1], onList = requireContext().getSharedPreferences("Dantotsu", Context.MODE_PRIVATE) - .getBoolean("popular_list", false)) } - live.postValue(false) - _binding?.animeRefresh?.isRefreshing = false + withContext(Dispatchers.Main) { + if (isAdded) { // Check if the fragment is still attached + model.loadPopular("ANIME", sort = Anilist.sortBy[1], onList = requireContext().getSharedPreferences("Dantotsu", Context.MODE_PRIVATE) + .getBoolean("popular_list", false)) + } + live.postValue(false) + _binding?.animeRefresh?.isRefreshing = false + } } } } + } override fun onResume() { diff --git a/app/src/main/java/ani/dantotsu/home/MangaFragment.kt b/app/src/main/java/ani/dantotsu/home/MangaFragment.kt index 8fc18f9c..24bb992f 100644 --- a/app/src/main/java/ani/dantotsu/home/MangaFragment.kt +++ b/app/src/main/java/ani/dantotsu/home/MangaFragment.kt @@ -242,11 +242,16 @@ class MangaFragment : Fragment() { model.loaded = true model.loadTrending() model.loadTrendingNovel() - model.loadPopular("MANGA", sort = Anilist.sortBy[1], onList = requireContext().getSharedPreferences("Dantotsu", Context.MODE_PRIVATE) - .getBoolean("popular_list", false) ) } - live.postValue(false) - _binding?.mangaRefresh?.isRefreshing = false + withContext(Dispatchers.Main) { + if (isAdded) { + val sharedPrefs = requireContext().getSharedPreferences("Dantotsu", Context.MODE_PRIVATE) + val isPopularList = sharedPrefs.getBoolean("popular_list", false) + model.loadPopular("MANGA", sort = Anilist.sortBy[1], onList = isPopularList) + } + live.postValue(false) + _binding?.mangaRefresh?.isRefreshing = false + } } } }