From 488d9a7a4026f2d8a10ed1c4d98ba12d06f991b9 Mon Sep 17 00:00:00 2001 From: M66B Date: Sun, 3 Oct 2021 16:55:16 +0200 Subject: [PATCH] Update reselected folder properties --- app/src/main/java/eu/faircode/email/Core.java | 7 ++++--- app/src/main/java/eu/faircode/email/DaoFolder.java | 4 ++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index f0cc6ae559..ec6247b59b 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -2158,7 +2158,7 @@ class Core { } // Reselect system folders once - String key = "reselected." + type + "." + account.id; + String key = "updated." + account.id + "." + type; boolean reselected = prefs.getBoolean(key, false); if (!reselected) { prefs.edit().putBoolean(key, true).apply(); @@ -2166,10 +2166,11 @@ class Core { if (folder == null) { folder = db.folder().getFolderByName(account.id, fullName); if (folder != null) { - Log.e("Reselected " + account.host + " " + type + "=" + fullName); + Log.e("Updated " + account.host + " " + type + "=" + fullName); folder.type = type; folder.setProperties(); - db.folder().setFolderType(folder.id, folder.type); + folder.setSpecials(account); + db.folder().updateFolder(folder); } } } diff --git a/app/src/main/java/eu/faircode/email/DaoFolder.java b/app/src/main/java/eu/faircode/email/DaoFolder.java index 8197339474..0bfac4cc4a 100644 --- a/app/src/main/java/eu/faircode/email/DaoFolder.java +++ b/app/src/main/java/eu/faircode/email/DaoFolder.java @@ -24,6 +24,7 @@ import androidx.room.Dao; import androidx.room.Insert; import androidx.room.Query; import androidx.room.Transaction; +import androidx.room.Update; import java.util.List; @@ -385,6 +386,9 @@ public interface DaoFolder { " AND NOT (auto_classify_source IS :source AND auto_classify_target IS :target)") int setFolderAutoClassify(long id, boolean source, boolean target); + @Update + int updateFolder(EntityFolder folder); + @Query("DELETE FROM folder WHERE id = :id") void deleteFolder(long id);