diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 091a10f783..21a49a3ed4 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -153,6 +153,7 @@ public class AdapterMessage extends RecyclerView.Adapter 0 ? View.VISIBLE : View.GONE); ivAnswered.setVisibility(message.ui_answered ? View.VISIBLE : View.GONE); ivAttachments.setVisibility(message.attachments > 0 ? View.VISIBLE : View.GONE); tvNoInternetAttachments.setVisibility(View.GONE); diff --git a/app/src/main/java/eu/faircode/email/DaoMessage.java b/app/src/main/java/eu/faircode/email/DaoMessage.java index 38ca92e354..5491a0107c 100644 --- a/app/src/main/java/eu/faircode/email/DaoMessage.java +++ b/app/src/main/java/eu/faircode/email/DaoMessage.java @@ -53,6 +53,7 @@ public interface DaoMessage { ", " + unseen_unified + " AS unseen" + ", " + unflagged_unified + " AS unflagged" + ", (SELECT COUNT(a.id) FROM attachment a WHERE a.message = message.id) AS attachments" + + ", SUM(CASE WHEN folder.type = '" + EntityFolder.DRAFTS + "' THEN 1 ELSE 0 END) AS drafts" + ", 0 AS duplicate" + ", COUNT(DISTINCT message.msgid) AS visible" + ", MAX(CASE WHEN folder.unified THEN message.received ELSE 0 END) AS dummy" + @@ -90,6 +91,7 @@ public interface DaoMessage { ", " + unseen_folder + " AS unseen" + ", " + unflagged_folder + " AS unflagged" + ", (SELECT COUNT(a.id) FROM attachment a WHERE a.message = message.id) AS attachments" + + ", SUM(CASE WHEN folder.type = '" + EntityFolder.DRAFTS + "' THEN 1 ELSE 0 END) AS drafts" + ", COUNT(DISTINCT message.msgid) AS visible" + ", 0 AS duplicate" + ", MAX(CASE WHEN folder.id = :folder THEN message.received ELSE 0 END) AS dummy" + @@ -120,6 +122,7 @@ public interface DaoMessage { ", CASE WHEN message.ui_seen THEN 0 ELSE 1 END AS unseen" + ", CASE WHEN message.ui_flagged THEN 0 ELSE 1 END AS unflagged" + ", (SELECT COUNT(a.id) FROM attachment a WHERE a.message = message.id) AS attachments" + + ", CASE WHEN folder.type = '" + EntityFolder.DRAFTS + "' THEN 1 ELSE 0 END AS drafts" + ", 1 AS visible" + ", ((folder.type = '" + EntityFolder.ARCHIVE + "' OR folder.type = '" + EntityFolder.SENT + "')" + @@ -201,6 +204,7 @@ public interface DaoMessage { ", CASE WHEN message.ui_seen THEN 0 ELSE 1 END AS unseen" + ", CASE WHEN message.ui_flagged THEN 0 ELSE 1 END AS unflagged" + ", (SELECT COUNT(a.id) FROM attachment a WHERE a.message = message.id) AS attachments" + + ", CASE WHEN folder.type = '" + EntityFolder.DRAFTS + "' THEN 1 ELSE 0 END AS drafts" + ", 1 AS visible" + ", 0 AS duplicate" + " FROM message" + @@ -217,6 +221,7 @@ public interface DaoMessage { ", 1 AS unseen" + ", 0 AS unflagged" + ", 0 AS attachments" + + ", 0 AS drafts" + ", 1 AS visible" + ", 0 AS duplicate" + " FROM message" + diff --git a/app/src/main/java/eu/faircode/email/TupleMessageEx.java b/app/src/main/java/eu/faircode/email/TupleMessageEx.java index 2de54efbda..91aa4ebc4a 100644 --- a/app/src/main/java/eu/faircode/email/TupleMessageEx.java +++ b/app/src/main/java/eu/faircode/email/TupleMessageEx.java @@ -30,6 +30,7 @@ public class TupleMessageEx extends EntityMessage { public int unseen; public int unflagged; public int attachments; + public int drafts; public int visible; public boolean duplicate; @@ -48,6 +49,7 @@ public class TupleMessageEx extends EntityMessage { this.unseen == other.unseen && this.unflagged == other.unflagged && this.attachments == other.attachments && + this.drafts == other.drafts && this.visible == other.visible && this.duplicate == other.duplicate); } diff --git a/app/src/main/res/layout/fragment_legend.xml b/app/src/main/res/layout/fragment_legend.xml index 0f1d998ad4..1277f0d7f8 100644 --- a/app/src/main/res/layout/fragment_legend.xml +++ b/app/src/main/res/layout/fragment_legend.xml @@ -208,6 +208,26 @@ app:layout_constraintStart_toEndOf="@id/ivAttachment" app:layout_constraintTop_toTopOf="@id/ivAttachment" /> + + + + + app:layout_constraintTop_toBottomOf="@id/ivDraft" /> + + + + Conversation CC/BCC Attachment + Draft/edit Answered Contacts View content