Set trash and junk to polling

pull/186/head
M66B 4 years ago
parent c231619519
commit aa22116eb0

@ -214,6 +214,14 @@ public class EntityFolder extends EntityOrder implements Serializable {
TRASH, TRASH,
JUNK JUNK
)); ));
private static final List<Boolean> SYSTEM_FOLDER_POLL = Collections.unmodifiableList(Arrays.asList(
false, // inbox
false, // drafts
false, // sent
false, // archive
true, // trash
true // junk
)); // MUST match SYSTEM_FOLDER_SYNC
private static final List<Boolean> SYSTEM_FOLDER_DOWNLOAD = Collections.unmodifiableList(Arrays.asList( private static final List<Boolean> SYSTEM_FOLDER_DOWNLOAD = Collections.unmodifiableList(Arrays.asList(
true, // inbox true, // inbox
true, // drafts true, // drafts
@ -235,6 +243,7 @@ public class EntityFolder extends EntityOrder implements Serializable {
void setProperties() { void setProperties() {
int sync = EntityFolder.SYSTEM_FOLDER_SYNC.indexOf(type); int sync = EntityFolder.SYSTEM_FOLDER_SYNC.indexOf(type);
this.synchronize = (sync >= 0); this.synchronize = (sync >= 0);
this.poll = (sync < 0 || EntityFolder.SYSTEM_FOLDER_POLL.get(sync));
this.download = (sync < 0 || EntityFolder.SYSTEM_FOLDER_DOWNLOAD.get(sync)); this.download = (sync < 0 || EntityFolder.SYSTEM_FOLDER_DOWNLOAD.get(sync));
this.sync_days = EntityFolder.DEFAULT_SYNC; this.sync_days = EntityFolder.DEFAULT_SYNC;
@ -251,6 +260,11 @@ public class EntityFolder extends EntityOrder implements Serializable {
} }
} }
static boolean shouldPoll(String type) {
int sync = EntityFolder.SYSTEM_FOLDER_SYNC.indexOf(type);
return (sync < 0 || EntityFolder.SYSTEM_FOLDER_POLL.get(sync));
}
static EntityFolder getOutbox() { static EntityFolder getOutbox() {
EntityFolder outbox = new EntityFolder(); EntityFolder outbox = new EntityFolder();
outbox.name = "OUTBOX"; outbox.name = "OUTBOX";

@ -1164,28 +1164,28 @@ public class FragmentAccount extends FragmentBase {
if (drafts != null) { if (drafts != null) {
drafts.type = EntityFolder.DRAFTS; drafts.type = EntityFolder.DRAFTS;
drafts.poll = false; drafts.poll = EntityFolder.shouldPoll(drafts.type);
folders.add(drafts); folders.add(drafts);
} }
if (sent != null) { if (sent != null) {
sent.type = EntityFolder.SENT; sent.type = EntityFolder.SENT;
sent.poll = false; sent.poll = EntityFolder.shouldPoll(sent.type);
folders.add(sent); folders.add(sent);
} }
if (archive != null) { if (archive != null) {
archive.type = EntityFolder.ARCHIVE; archive.type = EntityFolder.ARCHIVE;
archive.poll = false; archive.poll = EntityFolder.shouldPoll(archive.type);
folders.add(archive); folders.add(archive);
} }
if (trash != null) { if (trash != null) {
trash.type = EntityFolder.TRASH; trash.type = EntityFolder.TRASH;
trash.poll = false; trash.poll = EntityFolder.shouldPoll(trash.type);
folders.add(trash); folders.add(trash);
} }
if (junk != null) { if (junk != null) {
junk.type = EntityFolder.JUNK; junk.type = EntityFolder.JUNK;
junk.poll = false; junk.poll = EntityFolder.shouldPoll(junk.type);
folders.add(junk); folders.add(junk);
} }

Loading…
Cancel
Save