mirror of
https://github.com/thunderbird/thunderbird-android.git
synced 2024-09-19 19:52:14 +02:00
Add MessagingControllerMailChecker
to hide MessagingController´ from
K9Drawer
This commit is contained in:
parent
49a273e5b8
commit
b1825c26b8
@ -31,6 +31,7 @@ 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.MessageReference;
|
||||
import app.k9mail.legacy.message.controller.MessagingControllerMailChecker;
|
||||
import app.k9mail.legacy.message.controller.MessagingControllerRegistry;
|
||||
import app.k9mail.legacy.message.controller.MessagingListener;
|
||||
import app.k9mail.legacy.message.controller.SimpleMessagingListener;
|
||||
@ -106,7 +107,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 implements MessagingControllerRegistry {
|
||||
public class MessagingController implements MessagingControllerRegistry, MessagingControllerMailChecker {
|
||||
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;
|
||||
|
@ -0,0 +1,13 @@
|
||||
package app.k9mail.legacy.message.controller
|
||||
|
||||
import app.k9mail.legacy.account.Account
|
||||
|
||||
interface MessagingControllerMailChecker {
|
||||
fun checkMail(
|
||||
account: Account?,
|
||||
ignoreLastCheckedTime: Boolean,
|
||||
useManualWakeLock: Boolean,
|
||||
notify: Boolean,
|
||||
listener: MessagingListener?,
|
||||
)
|
||||
}
|
@ -15,6 +15,7 @@ import app.k9mail.core.ui.legacy.designsystem.atom.icon.Icons
|
||||
import app.k9mail.legacy.account.Account
|
||||
import app.k9mail.legacy.folder.DisplayFolder
|
||||
import app.k9mail.legacy.folder.Folder
|
||||
import app.k9mail.legacy.message.controller.MessagingControllerMailChecker
|
||||
import app.k9mail.legacy.message.controller.SimpleMessagingListener
|
||||
import app.k9mail.legacy.ui.account.AccountsViewModel
|
||||
import app.k9mail.legacy.ui.account.DisplayAccount
|
||||
@ -27,7 +28,6 @@ import app.k9mail.legacy.ui.theme.Theme
|
||||
import app.k9mail.legacy.ui.theme.ThemeManager
|
||||
import com.fsck.k9.K9
|
||||
import com.fsck.k9.activity.MessageList
|
||||
import com.fsck.k9.controller.MessagingController
|
||||
import com.fsck.k9.ui.account.AccountImageLoader
|
||||
import com.fsck.k9.ui.base.livedata.observeNotNull
|
||||
import com.fsck.k9.ui.settings.SettingsActivity
|
||||
@ -69,7 +69,7 @@ class K9Drawer(private val parent: MessageList, savedInstanceState: Bundle?) : K
|
||||
private val folderNameFormatter: FolderNameFormatter by inject()
|
||||
private val themeManager: ThemeManager by inject()
|
||||
private val resources: Resources by inject()
|
||||
private val messagingController: MessagingController by inject()
|
||||
private val messagingController: MessagingControllerMailChecker by inject()
|
||||
private val accountImageLoader: AccountImageLoader by inject()
|
||||
private val folderIconProvider: FolderIconProvider by inject()
|
||||
|
||||
@ -310,11 +310,11 @@ class K9Drawer(private val parent: MessageList, savedInstanceState: Bundle?) : K
|
||||
swipeRefreshLayout.setOnRefreshListener {
|
||||
val accountToRefresh = if (headerView.selectionListShown) null else account
|
||||
messagingController.checkMail(
|
||||
accountToRefresh,
|
||||
true,
|
||||
true,
|
||||
true,
|
||||
object : SimpleMessagingListener() {
|
||||
account = accountToRefresh,
|
||||
ignoreLastCheckedTime = true,
|
||||
useManualWakeLock = true,
|
||||
notify = true,
|
||||
listener = object : SimpleMessagingListener() {
|
||||
override fun checkMailFinished(context: Context?, account: Account?) {
|
||||
swipeRefreshLayout.post {
|
||||
swipeRefreshLayout.isRefreshing = false
|
||||
|
@ -1,7 +1,9 @@
|
||||
package com.fsck.k9.ui
|
||||
|
||||
import android.content.Context
|
||||
import app.k9mail.legacy.message.controller.MessagingControllerMailChecker
|
||||
import app.k9mail.legacy.ui.theme.ThemeProvider
|
||||
import com.fsck.k9.controller.MessagingController
|
||||
import com.fsck.k9.ui.helper.DisplayHtmlUiFactory
|
||||
import com.fsck.k9.ui.helper.HtmlSettingsProvider
|
||||
import com.fsck.k9.ui.helper.SizeFormatter
|
||||
@ -14,6 +16,7 @@ val uiModule = module {
|
||||
single<ThemeProvider> { K9ThemeProvider() }
|
||||
single { HtmlSettingsProvider(get()) }
|
||||
single { DisplayHtmlUiFactory(get()) }
|
||||
single<MessagingControllerMailChecker> { get<MessagingController>() }
|
||||
factory(named("MessageView")) { get<DisplayHtmlUiFactory>().createForMessageView() }
|
||||
factory { (context: Context) -> SizeFormatter(context.resources) }
|
||||
factory { ShareIntentBuilder(resourceProvider = get(), textPartFinder = get(), quoteDateFormatter = get()) }
|
||||
|
Loading…
Reference in New Issue
Block a user