diff --git a/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt b/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt index 5030527c..695889ba 100644 --- a/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt +++ b/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt @@ -352,10 +352,10 @@ class AnilistQueries { returnArray.addAll(map.values) return returnArray } - val set = PrefManager.getVal>(PrefName.ContinuedAnimeSet).toMutableSet() - if (set.isNotEmpty()) { - set.forEach { - if (map.containsKey(it.toInt())) returnArray.add(map[it.toInt()]!!) + val list = PrefManager.getNullableCustomVal("continueAnimeList", listOf(), List::class.java) as List + if (list.isNotEmpty()) { + list.reversed().forEach { + if (map.containsKey(it)) returnArray.add(map[it]!!) } for (i in map) { if (i.value !in returnArray) returnArray.add(i.value) @@ -504,10 +504,10 @@ class AnilistQueries { returnMap["current$type"] = returnArray return } - val set = PrefManager.getVal>(PrefName.ContinuedAnimeSet).toMutableSet() - if (set.isNotEmpty()) { - set.forEach { - if (subMap.containsKey(it.toInt())) returnArray.add(subMap[it.toInt()]!!) + val list = PrefManager.getNullableCustomVal("continueAnimeList", listOf(), List::class.java) as List + if (list.isNotEmpty()) { + list.reversed().forEach { + if (subMap.containsKey(it)) returnArray.add(subMap[it]!!) } for (i in subMap) { if (i.value !in returnArray) returnArray.add(i.value) @@ -529,9 +529,9 @@ class AnilistQueries { subMap[m.id] = m } } - val set = PrefManager.getCustomVal>("continue_$type", setOf()).toMutableSet() - if (set.isNotEmpty()) { - set.reversed().forEach { + val list = PrefManager.getNullableCustomVal("continueAnimeList", listOf(), List::class.java) as List + if (list.isNotEmpty()) { + list.reversed().forEach { if (subMap.containsKey(it)) returnArray.add(subMap[it]!!) } for (i in subMap) { diff --git a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt index 0b2f831d..037b7495 100644 --- a/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt +++ b/app/src/main/java/ani/dantotsu/media/anime/ExoplayerView.kt @@ -1245,10 +1245,10 @@ class ExoplayerView : AppCompatActivity(), Player.Listener, SessionAvailabilityL media.anime!!.selectedEpisode!! ) - val list = PrefManager.getVal>(PrefName.ContinuedAnimeSet).toMutableList() - if (list.contains(media.id.toString())) list.remove(media.id.toString()) - list.add(media.id.toString()) - PrefManager.setVal(PrefName.ContinuedAnimeSet, list.toSet()) + val list = (PrefManager.getNullableCustomVal("continueAnimeList", listOf(), List::class.java) as List).toMutableList() + if (list.contains(media.id)) list.remove(media.id) + list.add(media.id) + PrefManager.setCustomVal("continueAnimeList", list) lifecycleScope.launch(Dispatchers.IO) { extractor?.onVideoStopped(video) diff --git a/app/src/main/java/ani/dantotsu/settings/saving/Preferences.kt b/app/src/main/java/ani/dantotsu/settings/saving/Preferences.kt index af7e005b..7dec7e49 100644 --- a/app/src/main/java/ani/dantotsu/settings/saving/Preferences.kt +++ b/app/src/main/java/ani/dantotsu/settings/saving/Preferences.kt @@ -100,7 +100,6 @@ enum class PrefName(val data: Pref) { //TODO: Split this into multiple files UseInternalCast(Pref(Location.Player, Boolean::class, false)), Pip(Pref(Location.Player, Boolean::class, true)), RotationPlayer(Pref(Location.Player, Boolean::class, true)), - ContinuedAnimeSet(Pref(Location.Player, Set::class, setOf())), //Reader ShowSource(Pref(Location.Reader, Boolean::class, true)),