From 2ed5eae029c6e2fb42b58d124582bfa1e2440256 Mon Sep 17 00:00:00 2001 From: Vitor Pamplona Date: Thu, 25 May 2023 18:34:40 -0400 Subject: [PATCH] Preserves invalidations of DataSources for Home, Videos and Notifications --- .../vitorpamplona/amethyst/ui/screen/loggedIn/HomeScreen.kt | 4 +++- .../amethyst/ui/screen/loggedIn/NotificationScreen.kt | 6 +++--- .../amethyst/ui/screen/loggedIn/VideoScreen.kt | 1 + 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/HomeScreen.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/HomeScreen.kt index 62959250a..e859f23d2 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/HomeScreen.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/HomeScreen.kt @@ -59,6 +59,7 @@ fun HomeScreen( LaunchedEffect(accountViewModel, account.defaultHomeFollowList) { HomeNewThreadFeedFilter.account = account HomeConversationsFeedFilter.account = account + NostrHomeDataSource.invalidateFilters() } if (wantsToAddNip47 != null) { @@ -71,6 +72,7 @@ fun HomeScreen( if (event == Lifecycle.Event.ON_RESUME) { HomeNewThreadFeedFilter.account = account HomeConversationsFeedFilter.account = account + NostrHomeDataSource.invalidateFilters() } } @@ -84,7 +86,7 @@ fun HomeScreen( val scope = rememberCoroutineScope() LaunchedEffect(key1 = Unit) { scope.launch(Dispatchers.IO) { - NostrHomeDataSource.resetFilters() + NostrHomeDataSource.invalidateFilters() homeFeedViewModel.invalidateData(true) repliesFeedViewModel.invalidateData(true) } diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt index 61ae8598e..e37ba81c9 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/NotificationScreen.kt @@ -70,8 +70,8 @@ fun NotificationScreen( notifFeedViewModel.clear() } - LaunchedEffect(account.userProfile().pubkeyHex, account.defaultNotificationFollowList) { - NostrAccountDataSource.resetFilters() + LaunchedEffect(accountViewModel, account.defaultNotificationFollowList) { + NostrAccountDataSource.invalidateFilters() NotificationFeedFilter.account = account } @@ -79,8 +79,8 @@ fun NotificationScreen( DisposableEffect(accountViewModel) { val observer = LifecycleEventObserver { _, event -> if (event == Lifecycle.Event.ON_RESUME) { + NostrAccountDataSource.invalidateFilters() NotificationFeedFilter.account = account - notifFeedViewModel.invalidateData(true) } } diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/VideoScreen.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/VideoScreen.kt index 0e417fa86..b12ebcb66 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/VideoScreen.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/VideoScreen.kt @@ -123,6 +123,7 @@ fun VideoScreen( LaunchedEffect(accountViewModel, accountState.value?.account?.defaultStoriesFollowList) { VideoFeedFilter.account = account NostrVideoDataSource.account = account + NostrVideoDataSource.resetFilters() } DisposableEffect(accountViewModel) {