From cf55c8984ba8895f8da4a5cbafb689713c7d839c Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 27 Apr 2019 11:37:10 +0200 Subject: [PATCH] Added account warning about no identities --- .../java/eu/faircode/email/AdapterAccount.java | 3 +++ .../main/java/eu/faircode/email/DaoAccount.java | 4 ++++ .../java/eu/faircode/email/TupleAccountEx.java | 3 +++ app/src/main/res/layout/item_account.xml | 16 +++++++++++++++- app/src/main/res/values/strings.xml | 1 + 5 files changed, 26 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/eu/faircode/email/AdapterAccount.java b/app/src/main/java/eu/faircode/email/AdapterAccount.java index b81903ba48..fe2eb9b7ad 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAccount.java +++ b/app/src/main/java/eu/faircode/email/AdapterAccount.java @@ -70,6 +70,7 @@ public class AdapterAccount extends RecyclerView.Adapter 0 || !settings ? View.GONE : View.VISIBLE); tvDrafts.setVisibility(account.drafts || !settings ? View.GONE : View.VISIBLE); tvWarning.setText(account.warning); diff --git a/app/src/main/java/eu/faircode/email/DaoAccount.java b/app/src/main/java/eu/faircode/email/DaoAccount.java index 2fd0f30397..5848e21a17 100644 --- a/app/src/main/java/eu/faircode/email/DaoAccount.java +++ b/app/src/main/java/eu/faircode/email/DaoAccount.java @@ -52,6 +52,10 @@ public interface DaoAccount { " AND folder.type <> '" + EntityFolder.OUTBOX + "'" + " AND NOT ui_seen" + " AND NOT ui_hide) AS unseen" + + ", (SELECT COUNT(identity.id)" + + " FROM identity" + + " WHERE identity.account = account.id" + + " AND identity.synchronize) AS identities" + ", (SELECT COUNT(message.id)" + " FROM message" + " JOIN folder ON folder.id = message.folder" + diff --git a/app/src/main/java/eu/faircode/email/TupleAccountEx.java b/app/src/main/java/eu/faircode/email/TupleAccountEx.java index 46f36dcaa8..fcf8cf18f7 100644 --- a/app/src/main/java/eu/faircode/email/TupleAccountEx.java +++ b/app/src/main/java/eu/faircode/email/TupleAccountEx.java @@ -23,6 +23,7 @@ public class TupleAccountEx extends EntityAccount { public int unseen; public int unsent; public int operations; + public int identities; // synchronizing public boolean drafts; public boolean uiEquals(Object obj) { @@ -30,6 +31,7 @@ public class TupleAccountEx extends EntityAccount { TupleAccountEx other = (TupleAccountEx) obj; return (super.equals(obj) && this.unseen == other.unseen && + this.identities == other.identities && this.drafts == other.drafts); } else return false; @@ -43,6 +45,7 @@ public class TupleAccountEx extends EntityAccount { this.unseen == other.unseen && this.unsent == other.unsent && this.operations == other.operations && + this.identities == other.identities && this.drafts == other.drafts); } else return false; diff --git a/app/src/main/res/layout/item_account.xml b/app/src/main/res/layout/item_account.xml index 84e8defe53..8c12b8c31e 100644 --- a/app/src/main/res/layout/item_account.xml +++ b/app/src/main/res/layout/item_account.xml @@ -130,6 +130,20 @@ app:layout_constraintStart_toEndOf="@+id/ivState" app:layout_constraintTop_toBottomOf="@id/tvHost" /> + + + app:layout_constraintTop_toBottomOf="@id/tvIdentity" /> This provider does not support UTF-8 Synchronization errors since %1$s Synchronizing some folders failed + An identity is required to send messages A drafts folder is required to send messages Delete this account permanently? Delete this identity permanently?