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

Unverified Commit 9f0b1878 authored by cketti's avatar cketti Committed by GitHub
Browse files

Merge pull request #8243 from thunderbird/remove_folder_display_class

Remove folder display class
parents 11e6d542 7b15f594
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
package app.k9mail.core.mail.folder.api

import com.fsck.k9.mail.FolderClass

data class FolderDetails(
    val folder: Folder,
    val isInTopGroup: Boolean,
    val isIntegrate: Boolean,
    val isSyncEnabled: Boolean,
    val displayClass: FolderClass,
    val isVisible: Boolean,
    val isNotificationsEnabled: Boolean,
    val isPushEnabled: Boolean,
)
+1 −2
Original line number Diff line number Diff line
@@ -8,7 +8,6 @@ import com.fsck.k9.mail.Flag
import com.fsck.k9.mail.K9MailLib
import com.fsck.k9.mail.Message
import com.fsck.k9.mailstore.LocalFolder
import com.fsck.k9.mailstore.LocalFolder.isModeMismatch
import com.fsck.k9.mailstore.LocalMessage
import timber.log.Timber

@@ -32,7 +31,7 @@ class K9NotificationStrategy(
            return false
        }

        if (isModeMismatch(account.folderDisplayMode, localFolder.displayClass)) {
        if (!localFolder.isVisible) {
            Timber.v("No notification: Message is in folder not being displayed")
            return false
        }
+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ internal class DefaultMessageCountsProvider(
    override fun getMessageCounts(account: Account): MessageCounts {
        val search = LocalSearch().apply {
            excludeSpecialFolders(account)
            limitToDisplayableFolders(account)
            limitToDisplayableFolders()
        }

        return getMessageCounts(account, search.conditions)
+1 −5
Original line number Diff line number Diff line
@@ -60,7 +60,6 @@ import com.fsck.k9.mail.AuthenticationFailedException;
import com.fsck.k9.mail.CertificateValidationException;
import com.fsck.k9.mail.FetchProfile;
import com.fsck.k9.mail.Flag;
import com.fsck.k9.mail.FolderClass;
import com.fsck.k9.mail.Message;
import com.fsck.k9.mail.MessageDownloadState;
import com.fsck.k9.mail.MessagingException;
@@ -2283,14 +2282,11 @@ public class MessagingController implements MessagingControllerRegistry, Messagi
        refreshFolderListIfStale(account);

        try {
            Account.FolderMode aDisplayMode = account.getFolderDisplayMode();

            LocalStore localStore = localStoreProvider.getInstance(account);
            for (final LocalFolder folder : localStore.getPersonalNamespaces(false)) {
                folder.open();

                FolderClass fDisplayClass = folder.getDisplayClass();
                if (LocalFolder.isModeMismatch(aDisplayMode, fDisplayClass)) {
                if (!folder.isVisible()) {
                    // Never sync a folder that isn't displayed
                    continue;
                }
+2 −7
Original line number Diff line number Diff line
@@ -3,7 +3,6 @@ package com.fsck.k9.mailstore
import app.k9mail.legacy.account.Account
import app.k9mail.legacy.mailstore.FolderSettings
import com.fsck.k9.Preferences
import com.fsck.k9.mail.FolderClass

/**
 * Provides imported folder settings if available, otherwise default values.
@@ -15,7 +14,7 @@ class FolderSettingsProvider(val preferences: Preferences, val account: Account)

        return FolderSettings(
            visibleLimit = account.displayCount,
            displayClass = storage.getString("$prefix.displayMode", null).toFolderClass(FolderClass.NO_CLASS),
            isVisible = storage.getBoolean("$prefix.visible", true),
            isSyncEnabled = storage.getBoolean("$prefix.syncEnabled", false),
            isNotificationsEnabled = storage.getBoolean("$prefix.notificationsEnabled", false),
            isPushEnabled = storage.getBoolean("$prefix.pushEnabled", false),
@@ -29,7 +28,7 @@ class FolderSettingsProvider(val preferences: Preferences, val account: Account)
    private fun removeImportedFolderSettings(prefix: String) {
        val editor = preferences.createStorageEditor()

        editor.remove("$prefix.displayMode")
        editor.remove("$prefix.visible")
        editor.remove("$prefix.syncEnabled")
        editor.remove("$prefix.notificationsEnabled")
        editor.remove("$prefix.pushEnabled")
@@ -38,8 +37,4 @@ class FolderSettingsProvider(val preferences: Preferences, val account: Account)

        editor.commit()
    }

    private fun String?.toFolderClass(defaultValue: FolderClass): FolderClass {
        return if (this == null) defaultValue else FolderClass.valueOf(this)
    }
}
Loading