Loading legacy/core/src/main/java/com/fsck/k9/controller/KoinModule.kt +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package com.fsck.k9.controller import android.content.Context import app.k9mail.legacy.mailstore.MessageStoreManager import app.k9mail.legacy.message.controller.MessagingControllerRegistry import com.fsck.k9.Preferences import com.fsck.k9.backend.BackendManager import com.fsck.k9.mailstore.LocalStoreProvider Loading Loading @@ -29,6 +30,8 @@ val controllerModule = module { ) } single<MessagingControllerRegistry> { get<MessagingController>() } single<MessageCountsProvider> { DefaultMessageCountsProvider( accountManager = get(), Loading legacy/core/src/main/java/com/fsck/k9/controller/MessagingController.java +4 −3 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import androidx.annotation.VisibleForTesting; import app.k9mail.legacy.account.Account; import app.k9mail.legacy.account.Account.DeletePolicy; import app.k9mail.legacy.di.DI; import app.k9mail.legacy.message.controller.MessagingControllerRegistry; import app.k9mail.legacy.message.controller.MessagingListener; import app.k9mail.legacy.message.controller.SimpleMessagingListener; import com.fsck.k9.K9; Loading Loading @@ -104,7 +105,7 @@ import static com.fsck.k9.mail.Flag.X_REMOTE_COPY_STARTED; * it removes itself. Thus, any commands that that activity submitted are * removed from the queue once the activity is no longer active. */ public class MessagingController { public class MessagingController implements MessagingControllerRegistry { public static final Set<Flag> SYNC_FLAGS = EnumSet.of(Flag.SEEN, Flag.FLAGGED, Flag.ANSWERED, Flag.FORWARDED); private static final long FOLDER_LIST_STALENESS_THRESHOLD = 30 * 60 * 1000L; Loading Loading @@ -285,7 +286,7 @@ public class MessagingController { return folderId; } public void addListener(MessagingListener listener) { public void addListener(@NonNull MessagingListener listener) { listeners.add(listener); refreshListener(listener); } Loading @@ -296,7 +297,7 @@ public class MessagingController { } } public void removeListener(MessagingListener listener) { public void removeListener(@NonNull MessagingListener listener) { listeners.remove(listener); } Loading legacy/core/src/main/java/com/fsck/k9/mailstore/FolderRepository.kt +2 −2 Original line number Diff line number Diff line Loading @@ -11,8 +11,8 @@ import app.k9mail.legacy.folder.FolderType import app.k9mail.legacy.folder.RemoteFolder import app.k9mail.legacy.mailstore.FolderSettingsChangedListener import app.k9mail.legacy.mailstore.MessageStoreManager import app.k9mail.legacy.message.controller.MessagingControllerRegistry import app.k9mail.legacy.message.controller.SimpleMessagingListener import com.fsck.k9.controller.MessagingController import com.fsck.k9.mail.FolderClass import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.Dispatchers Loading Loading @@ -63,7 +63,7 @@ class FolderRepository( } fun getDisplayFoldersFlow(account: Account, displayMode: FolderMode): Flow<List<DisplayFolder>> { val messagingController = DI.get<MessagingController>() val messagingController = DI.get<MessagingControllerRegistry>() val messageStore = messageStoreManager.getMessageStore(account) return callbackFlow { Loading legacy/message/src/main/java/app/k9mail/legacy/message/controller/MessagingControllerRegistry.kt 0 → 100644 +8 −0 Original line number Diff line number Diff line package app.k9mail.legacy.message.controller interface MessagingControllerRegistry { fun addListener(listener: MessagingListener) fun removeListener(listener: MessagingListener) } Loading
legacy/core/src/main/java/com/fsck/k9/controller/KoinModule.kt +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ package com.fsck.k9.controller import android.content.Context import app.k9mail.legacy.mailstore.MessageStoreManager import app.k9mail.legacy.message.controller.MessagingControllerRegistry import com.fsck.k9.Preferences import com.fsck.k9.backend.BackendManager import com.fsck.k9.mailstore.LocalStoreProvider Loading Loading @@ -29,6 +30,8 @@ val controllerModule = module { ) } single<MessagingControllerRegistry> { get<MessagingController>() } single<MessageCountsProvider> { DefaultMessageCountsProvider( accountManager = get(), Loading
legacy/core/src/main/java/com/fsck/k9/controller/MessagingController.java +4 −3 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import androidx.annotation.VisibleForTesting; import app.k9mail.legacy.account.Account; import app.k9mail.legacy.account.Account.DeletePolicy; import app.k9mail.legacy.di.DI; import app.k9mail.legacy.message.controller.MessagingControllerRegistry; import app.k9mail.legacy.message.controller.MessagingListener; import app.k9mail.legacy.message.controller.SimpleMessagingListener; import com.fsck.k9.K9; Loading Loading @@ -104,7 +105,7 @@ import static com.fsck.k9.mail.Flag.X_REMOTE_COPY_STARTED; * it removes itself. Thus, any commands that that activity submitted are * removed from the queue once the activity is no longer active. */ public class MessagingController { public class MessagingController implements MessagingControllerRegistry { public static final Set<Flag> SYNC_FLAGS = EnumSet.of(Flag.SEEN, Flag.FLAGGED, Flag.ANSWERED, Flag.FORWARDED); private static final long FOLDER_LIST_STALENESS_THRESHOLD = 30 * 60 * 1000L; Loading Loading @@ -285,7 +286,7 @@ public class MessagingController { return folderId; } public void addListener(MessagingListener listener) { public void addListener(@NonNull MessagingListener listener) { listeners.add(listener); refreshListener(listener); } Loading @@ -296,7 +297,7 @@ public class MessagingController { } } public void removeListener(MessagingListener listener) { public void removeListener(@NonNull MessagingListener listener) { listeners.remove(listener); } Loading
legacy/core/src/main/java/com/fsck/k9/mailstore/FolderRepository.kt +2 −2 Original line number Diff line number Diff line Loading @@ -11,8 +11,8 @@ import app.k9mail.legacy.folder.FolderType import app.k9mail.legacy.folder.RemoteFolder import app.k9mail.legacy.mailstore.FolderSettingsChangedListener import app.k9mail.legacy.mailstore.MessageStoreManager import app.k9mail.legacy.message.controller.MessagingControllerRegistry import app.k9mail.legacy.message.controller.SimpleMessagingListener import com.fsck.k9.controller.MessagingController import com.fsck.k9.mail.FolderClass import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.Dispatchers Loading Loading @@ -63,7 +63,7 @@ class FolderRepository( } fun getDisplayFoldersFlow(account: Account, displayMode: FolderMode): Flow<List<DisplayFolder>> { val messagingController = DI.get<MessagingController>() val messagingController = DI.get<MessagingControllerRegistry>() val messageStore = messageStoreManager.getMessageStore(account) return callbackFlow { Loading
legacy/message/src/main/java/app/k9mail/legacy/message/controller/MessagingControllerRegistry.kt 0 → 100644 +8 −0 Original line number Diff line number Diff line package app.k9mail.legacy.message.controller interface MessagingControllerRegistry { fun addListener(listener: MessagingListener) fun removeListener(listener: MessagingListener) }