From 988973135d3a209581bfd76534fe9a1bd40f30ce Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 5 Jan 2019 07:52:08 +0000 Subject: [PATCH] Default no download for archive, trash and junk --- app/src/main/java/eu/faircode/email/EntityFolder.java | 7 +++++++ app/src/main/java/eu/faircode/email/FragmentAccount.java | 4 +++- app/src/main/java/eu/faircode/email/FragmentSetup.java | 4 +++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/EntityFolder.java b/app/src/main/java/eu/faircode/email/EntityFolder.java index db057932d4..983b55aa8a 100644 --- a/app/src/main/java/eu/faircode/email/EntityFolder.java +++ b/app/src/main/java/eu/faircode/email/EntityFolder.java @@ -149,6 +149,13 @@ public class EntityFolder implements Serializable { TRASH, JUNK ); + static final List SYSTEM_FOLDER_DOWNLOAD = Arrays.asList( + true, // drafts + true, // sent + false, // archive + false, // trash + false // junk + ); // MUST match SYSTEM_FOLDER_SYNC public EntityFolder() { } diff --git a/app/src/main/java/eu/faircode/email/FragmentAccount.java b/app/src/main/java/eu/faircode/email/FragmentAccount.java index 5dd076b0d5..3bbc9d30bf 100644 --- a/app/src/main/java/eu/faircode/email/FragmentAccount.java +++ b/app/src/main/java/eu/faircode/email/FragmentAccount.java @@ -524,10 +524,12 @@ public class FragmentAccount extends FragmentEx { DB db = DB.getInstance(context); EntityFolder folder = db.folder().getFolderByName(id, ifolder.getFullName()); if (folder == null) { + int sync = EntityFolder.SYSTEM_FOLDER_SYNC.indexOf(type); folder = new EntityFolder(); folder.name = ifolder.getFullName(); folder.type = (type == null ? EntityFolder.USER : type); - folder.synchronize = (type != null && EntityFolder.SYSTEM_FOLDER_SYNC.contains(type)); + folder.synchronize = (sync >= 0); + folder.download = (sync < 0 ? true : EntityFolder.SYSTEM_FOLDER_DOWNLOAD.get(sync)); folder.sync_days = EntityFolder.DEFAULT_SYNC; folder.keep_days = EntityFolder.DEFAULT_KEEP; } diff --git a/app/src/main/java/eu/faircode/email/FragmentSetup.java b/app/src/main/java/eu/faircode/email/FragmentSetup.java index 3cc3b080d5..5311f53d52 100644 --- a/app/src/main/java/eu/faircode/email/FragmentSetup.java +++ b/app/src/main/java/eu/faircode/email/FragmentSetup.java @@ -338,11 +338,13 @@ public class FragmentSetup extends FragmentEx { } if (selectable && type != null) { + int sync = EntityFolder.SYSTEM_FOLDER_SYNC.indexOf(type); EntityFolder folder = new EntityFolder(); folder.name = ifolder.getFullName(); folder.type = type; folder.level = EntityFolder.getLevel(separator, folder.name); - folder.synchronize = EntityFolder.SYSTEM_FOLDER_SYNC.contains(type); + folder.synchronize = (sync >= 0); + folder.download = (sync < 0 ? true : EntityFolder.SYSTEM_FOLDER_DOWNLOAD.get(sync)); folder.sync_days = EntityFolder.DEFAULT_SYNC; folder.keep_days = EntityFolder.DEFAULT_KEEP; folders.add(folder);