feat(home): hive private media

This commit is contained in:
aayush262 2024-06-13 17:53:40 +05:30
parent 903423b842
commit 1670383619
2 changed files with 16 additions and 4 deletions

View file

@ -479,6 +479,7 @@ class AnilistQueries {
suspend fun initHomePage(): Map<String, ArrayList<*>> { suspend fun initHomePage(): Map<String, ArrayList<*>> {
val removeList = PrefManager.getCustomVal("removeList", setOf<Int>()) val removeList = PrefManager.getCustomVal("removeList", setOf<Int>())
val hidePrivate = PrefManager.getVal<Boolean>(PrefName.HidePrivate)
val removedMedia = ArrayList<Media>() val removedMedia = ArrayList<Media>()
val toShow: List<Boolean> = val toShow: List<Boolean> =
PrefManager.getVal(PrefName.HomeLayout) // anime continue, anime fav, anime planned, manga continue, manga fav, manga planned, recommendations PrefManager.getVal(PrefName.HomeLayout) // anime continue, anime fav, anime planned, manga continue, manga fav, manga planned, recommendations
@ -528,7 +529,7 @@ class AnilistQueries {
current?.lists?.forEach { li -> current?.lists?.forEach { li ->
li.entries?.reversed()?.forEach { li.entries?.reversed()?.forEach {
val m = Media(it) val m = Media(it)
if (m.id !in removeList) { if (m.id !in removeList && if (hidePrivate) !m.isListPrivate else true) {
m.cameFromContinue = true m.cameFromContinue = true
subMap[m.id] = m subMap[m.id] = m
} else { } else {
@ -540,7 +541,7 @@ class AnilistQueries {
repeating?.lists?.forEach { li -> repeating?.lists?.forEach { li ->
li.entries?.reversed()?.forEach { li.entries?.reversed()?.forEach {
val m = Media(it) val m = Media(it)
if (m.id !in removeList) { if (m.id !in removeList && if (hidePrivate) !m.isListPrivate else true) {
m.cameFromContinue = true m.cameFromContinue = true
subMap[m.id] = m subMap[m.id] = m
} else { } else {
@ -579,7 +580,7 @@ class AnilistQueries {
current?.lists?.forEach { li -> current?.lists?.forEach { li ->
li.entries?.reversed()?.forEach { li.entries?.reversed()?.forEach {
val m = Media(it) val m = Media(it)
if (m.id !in removeList) { if (m.id !in removeList && if (hidePrivate) !m.isListPrivate else true) {
m.cameFromContinue = true m.cameFromContinue = true
subMap[m.id] = m subMap[m.id] = m
} else { } else {
@ -612,7 +613,7 @@ class AnilistQueries {
apiMediaList?.edges?.forEach { apiMediaList?.edges?.forEach {
it.node?.let { i -> it.node?.let { i ->
val m = Media(i).apply { isFav = true } val m = Media(i).apply { isFav = true }
if (m.id !in removeList) { if (m.id !in removeList && if (hidePrivate) !m.isListPrivate else true) {
returnArray.add(m) returnArray.add(m)
} else { } else {
removedMedia.add(m) removedMedia.add(m)

View file

@ -372,6 +372,17 @@ class SettingsCommonActivity : AppCompatActivity() {
PrefManager.setVal(PrefName.ContinueMedia, isChecked) PrefManager.setVal(PrefName.ContinueMedia, isChecked)
} }
), ),
Settings(
type = 2,
name = getString(R.string.hide_private),
desc = getString(R.string.hide_private_desc),
icon = R.drawable.ic_round_remove_red_eye_24,
isChecked = PrefManager.getVal(PrefName.HidePrivate),
switch = { isChecked, _ ->
PrefManager.setVal(PrefName.HidePrivate, isChecked)
restartApp()
}
),
Settings( Settings(
type = 2, type = 2,
name = getString(R.string.search_source_list), name = getString(R.string.search_source_list),