From 61669a157505e6ab6e3f9d6d36353fb8285d6cad Mon Sep 17 00:00:00 2001 From: kraptor123 Date: Mon, 15 Jun 2026 18:53:32 +0300 Subject: [PATCH 1/2] ui: Hide pinned NSFW-only extensions from non-NSFW categories --- .../com/lagradost/cloudstream3/ui/home/HomeFragment.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt index b68ef59625c..6acbb6f1397 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt @@ -451,7 +451,12 @@ class HomeFragment : BaseFragment( arrayAdapter.clear() val sortedApis = validAPIs .filter { - it.hasMainPage && (pinnedphashset.contains(it.name) || it.supportedTypes.any( + val isPinned = pinnedphashset.contains(it.name) + if (isPinned && !preSelectedTypes.contains(TvType.NSFW)) { + if (it.supportedTypes.all { type -> type == TvType.NSFW }) return@filter false + } + + it.hasMainPage && (isPinned || it.supportedTypes.any( preSelectedTypes::contains )) } From 82d9d046c78622b22f4dd55c467dc4918431920d Mon Sep 17 00:00:00 2001 From: firelight <147925818+fire-light42@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:04:01 +0000 Subject: [PATCH 2/2] Update HomeFragment.kt --- .../java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt index 6acbb6f1397..2594095092a 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/home/HomeFragment.kt @@ -452,6 +452,8 @@ class HomeFragment : BaseFragment( val sortedApis = validAPIs .filter { val isPinned = pinnedphashset.contains(it.name) + + // Hide pinned NSFW when NSFW not selected. NSFW is distracting when not chosen. if (isPinned && !preSelectedTypes.contains(TvType.NSFW)) { if (it.supportedTypes.all { type -> type == TvType.NSFW }) return@filter false }