From: Olaf Wintermann Date: Wed, 12 Nov 2025 16:42:45 +0000 (+0100) Subject: implement Mark as read menu item for feed groups X-Git-Url: https://uap-core.de/gitweb/?a=commitdiff_plain;h=7a0741c8b0bb76f98f4617331c1b84e8df47a2eb;p=rssreader.git implement Mark as read menu item for feed groups --- diff --git a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt index 70131b6..dc779c9 100644 --- a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt +++ b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt @@ -57,16 +57,21 @@ class MainWindow() { menuItem("Mark as read") { event -> val evt = event.subListEventData val feedIndex = evt.rowIndex - if(feedIndex >= 0 && evt.sublistIndex >= 0) { + if(evt.sublistIndex >= 0) { + var feeds:List = sourceList.groups[evt.sublistIndex].feeds + if(feedIndex >= 0) { + feeds = listOf(sourceList.groups[evt.sublistIndex].feeds[feedIndex]) + } try { - val feed = sourceList.groups[evt.sublistIndex].feeds[feedIndex] - feed.unreadItemsCount = 0 - feed.updateReadStatus(true) - if(evt.sublistIndex == currentSublistIndex && feedIndex == currentFeedIndex) { - feedList.reloadCurrentFeed() - } - GlobalScope.launch(Dispatchers.IO) { - Database.updateFeedReadState(feed, true) + for(feed in feeds) { + feed.unreadItemsCount = 0 + feed.updateReadStatus(true) + if(evt.sublistIndex == currentSublistIndex && feedIndex == currentFeedIndex) { + feedList.reloadCurrentFeed() + } + GlobalScope.launch(Dispatchers.IO) { + Database.updateFeedReadState(feed, true) + } } } catch (e: Exception) { e.printStackTrace() @@ -93,7 +98,6 @@ class MainWindow() { } menuItem("Delete") { event -> val evt = event.subListEventData - } separator() menuItem("Settings") { event ->