From 4ba3a40e8d33062804b053de1d6d607f58605b28 Mon Sep 17 00:00:00 2001 From: ialokim <ialokim@mailbox.org> Date: Wed, 23 Nov 2022 19:41:23 +0100 Subject: [PATCH] decrease unread counter when posts are read --- .../kotlin/org/briarproject/briar/desktop/forums/ForumItem.kt | 3 +++ .../org/briarproject/briar/desktop/forums/ForumViewModel.kt | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumItem.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumItem.kt index c68fdc1d7e..266c7bc7c8 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumItem.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumItem.kt @@ -55,4 +55,7 @@ data class ForumItem( unread = if (header.isRead) unread else unread + 1, timestamp = max(header.timestamp, this.timestamp) ) + + fun updateOnPostsRead(num: Int) = + copy(unread = unread - num) } diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt index 1e5c78569a..629bb298f4 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt @@ -105,6 +105,10 @@ class ForumViewModel @Inject constructor( e is ForumPostReceivedEvent -> { updateItem(e.groupId) { it.updateOnPostReceived(e.header) } } + + e is ForumPostReadEvent -> { + updateItem(e.groupId) { it.updateOnPostsRead(e.numMarkedRead) } + } } } -- GitLab