diff --git a/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt b/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt index bce553768..5ad77ecac 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/model/Account.kt @@ -454,11 +454,21 @@ class Account( val liveHiddenUsers = flowHiddenUsers.asLiveData() - val decryptBookmarks: LiveData by lazy { + val decryptBookmarks: LiveData by lazy { userProfile().live().innerBookmarks.switchMap { userState -> liveData(Dispatchers.IO) { - userState.user.latestBookmarkList?.privateTags(signer) { - scope.launch(Dispatchers.IO) { userState.user.latestBookmarkList?.let { emit(it) } } + if (userState.user.latestBookmarkList == null) { + emit(null) + } else { + emit( + withTimeoutOrNull(1000) { + suspendCancellableCoroutine { continuation -> + userState.user.latestBookmarkList?.privateTags(signer) { + continuation.resume(userState.user.latestBookmarkList) + } + } + }, + ) } } } diff --git a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/BookmarkListScreen.kt b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/BookmarkListScreen.kt index 1926b39d0..9e1244322 100644 --- a/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/BookmarkListScreen.kt +++ b/app/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/BookmarkListScreen.kt @@ -68,7 +68,6 @@ fun BookmarkListScreen( privateFeedViewModel.invalidateData() } - RenderBookmarkScreen(privateFeedViewModel, accountViewModel, nav, publicFeedViewModel) }