diff --git a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/ExplorePage.kt b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/ExplorePage.kt index e26336a7..4008762b 100644 --- a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/ExplorePage.kt +++ b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/ExplorePage.kt @@ -49,7 +49,6 @@ fun ExplorePage(viewModel: MainNavFragmentViewModelX) { val context = LocalContext.current val mainActivityX = context as MainActivityX val products by viewModel.primaryProducts.observeAsState(null) - val categories by viewModel.categories.observeAsState(emptyList()) val installedList by viewModel.installed.observeAsState(null) val repositories by viewModel.repositories.observeAsState(null) val repositoriesMap by remember(repositories) { @@ -64,6 +63,18 @@ fun ExplorePage(viewModel: MainNavFragmentViewModelX) { viewModel.searchQuery.postValue(newQuery) } } + CoroutineScope(Dispatchers.Default).launch { + Preferences.subject.collect { + when (it) { + Preferences.Key.ReposFilterExplore, + Preferences.Key.CategoriesFilterExplore, + Preferences.Key.SortOrderExplore, + Preferences.Key.SortOrderAscendingExplore -> + viewModel.updatedFilter.postValue(true) + else -> {} + } + } + } } AppTheme( diff --git a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/InstalledPage.kt b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/InstalledPage.kt index b2c9a591..e7a4afbe 100644 --- a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/InstalledPage.kt +++ b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/InstalledPage.kt @@ -69,6 +69,18 @@ fun InstalledPage(viewModel: MainNavFragmentViewModelX) { viewModel.searchQuery.postValue(newQuery) } } + CoroutineScope(Dispatchers.Default).launch { + Preferences.subject.collect { + when (it) { + Preferences.Key.ReposFilterInstalled, + Preferences.Key.CategoriesFilterInstalled, + Preferences.Key.SortOrderInstalled, + Preferences.Key.SortOrderAscendingInstalled -> + viewModel.updatedFilter.postValue(true) + else -> {} + } + } + } } AppTheme( diff --git a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/LatestPage.kt b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/LatestPage.kt index bc389908..0da17b0b 100644 --- a/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/LatestPage.kt +++ b/src/main/kotlin/com/machiav3lli/fdroid/ui/pages/LatestPage.kt @@ -1,4 +1,4 @@ - package com.machiav3lli.fdroid.ui.pages +package com.machiav3lli.fdroid.ui.pages import androidx.compose.foundation.background import androidx.compose.foundation.isSystemInDarkTheme @@ -62,6 +62,18 @@ fun LatestPage(viewModel: MainNavFragmentViewModelX) { viewModel.searchQuery.postValue(newQuery) } } + CoroutineScope(Dispatchers.Default).launch { + Preferences.subject.collect { + when (it) { + Preferences.Key.ReposFilterLatest, + Preferences.Key.CategoriesFilterLatest, + Preferences.Key.SortOrderLatest, + Preferences.Key.SortOrderAscendingLatest -> + viewModel.updatedFilter.postValue(true) + else -> {} + } + } + } } AppTheme( @@ -101,7 +113,7 @@ fun LatestPage(viewModel: MainNavFragmentViewModelX) { labelColor = MaterialTheme.colorScheme.onSurface, ), onClick = { - mainActivityX.navigateSortFilter(NavItem.Latest.destination) + mainActivityX.navigateSortFilter(NavItem.Latest.destination) }, icon = { Icon(