Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit dd937c19 authored by Wolf-Martell Montwé's avatar Wolf-Martell Montwé
Browse files

Change MessageCountsProvider to allow getMessageCounts with LocalSearch

parent d57738a9
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ import app.k9mail.legacy.account.Account
import app.k9mail.legacy.mailstore.FolderRepository
import app.k9mail.legacy.message.controller.MessageCounts
import app.k9mail.legacy.message.controller.MessageCountsProvider
import app.k9mail.legacy.search.LocalSearch
import app.k9mail.legacy.search.SearchAccount
import app.k9mail.legacy.ui.folder.FolderNameFormatter
import assertk.assertThat
@@ -136,6 +137,10 @@ class UnreadWidgetDataProviderTest : AutoCloseKoinTest() {
            return MessageCounts(unread = SEARCH_ACCOUNT_UNREAD_COUNT, starred = 0)
        }

        override fun getMessageCounts(search: LocalSearch): MessageCounts {
            throw UnsupportedOperationException()
        }

        override fun getUnreadMessageCount(account: Account, folderId: Long): Int {
            return FOLDER_UNREAD_COUNT
        }
+4 −1
Original line number Diff line number Diff line
@@ -27,7 +27,10 @@ internal class DefaultMessageCountsProvider(
    }

    override fun getMessageCounts(searchAccount: SearchAccount): MessageCounts {
        val search = searchAccount.relatedSearch
        return getMessageCounts(searchAccount.relatedSearch)
    }

    override fun getMessageCounts(search: LocalSearch): MessageCounts {
        val accounts = search.getAccounts(accountManager)

        var unreadCount = 0
+2 −0
Original line number Diff line number Diff line
package app.k9mail.legacy.message.controller

import app.k9mail.legacy.account.Account
import app.k9mail.legacy.search.LocalSearch
import app.k9mail.legacy.search.SearchAccount

interface MessageCountsProvider {
    fun getMessageCounts(account: Account): MessageCounts
    fun getMessageCounts(searchAccount: SearchAccount): MessageCounts
    fun getMessageCounts(search: LocalSearch): MessageCounts
    fun getUnreadMessageCount(account: Account, folderId: Long): Int
}