mirror of
https://github.com/M66B/FairEmail.git
synced 2025-02-25 15:32:52 +00:00
Show if folder has active rules
This commit is contained in:
parent
08c37785ad
commit
f3e5159168
6 changed files with 114 additions and 62 deletions
|
@ -94,8 +94,9 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||||
private ImageView ivExpander;
|
private ImageView ivExpander;
|
||||||
|
|
||||||
private ImageView ivUnified;
|
private ImageView ivUnified;
|
||||||
private ImageView ivNotify;
|
|
||||||
private ImageView ivSubscribed;
|
private ImageView ivSubscribed;
|
||||||
|
private ImageView ivRule;
|
||||||
|
private ImageView ivNotify;
|
||||||
private TextView tvName;
|
private TextView tvName;
|
||||||
private TextView tvMessages;
|
private TextView tvMessages;
|
||||||
private ImageView ivMessages;
|
private ImageView ivMessages;
|
||||||
|
@ -123,8 +124,9 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||||
ivExpander = itemView.findViewById(R.id.ivExpander);
|
ivExpander = itemView.findViewById(R.id.ivExpander);
|
||||||
|
|
||||||
ivUnified = itemView.findViewById(R.id.ivUnified);
|
ivUnified = itemView.findViewById(R.id.ivUnified);
|
||||||
ivNotify = itemView.findViewById(R.id.ivNotify);
|
|
||||||
ivSubscribed = itemView.findViewById(R.id.ivSubscribed);
|
ivSubscribed = itemView.findViewById(R.id.ivSubscribed);
|
||||||
|
ivRule = itemView.findViewById(R.id.ivRule);
|
||||||
|
ivNotify = itemView.findViewById(R.id.ivNotify);
|
||||||
tvName = itemView.findViewById(R.id.tvName);
|
tvName = itemView.findViewById(R.id.tvName);
|
||||||
tvMessages = itemView.findViewById(R.id.tvMessages);
|
tvMessages = itemView.findViewById(R.id.tvMessages);
|
||||||
ivMessages = itemView.findViewById(R.id.ivMessages);
|
ivMessages = itemView.findViewById(R.id.ivMessages);
|
||||||
|
@ -204,8 +206,9 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||||
|
|
||||||
if (listener == null) {
|
if (listener == null) {
|
||||||
ivUnified.setVisibility(account > 0 && folder.unified ? View.VISIBLE : View.GONE);
|
ivUnified.setVisibility(account > 0 && folder.unified ? View.VISIBLE : View.GONE);
|
||||||
ivNotify.setVisibility(folder.notify ? View.VISIBLE : View.GONE);
|
|
||||||
ivSubscribed.setVisibility(subscriptions && folder.subscribed != null && folder.subscribed ? View.VISIBLE : View.GONE);
|
ivSubscribed.setVisibility(subscriptions && folder.subscribed != null && folder.subscribed ? View.VISIBLE : View.GONE);
|
||||||
|
ivRule.setVisibility(folder.rules > 0 ? View.VISIBLE : View.GONE);
|
||||||
|
ivNotify.setVisibility(folder.notify ? View.VISIBLE : View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (folder.unseen > 0)
|
if (folder.unseen > 0)
|
||||||
|
|
|
@ -33,13 +33,16 @@ public interface DaoFolder {
|
||||||
|
|
||||||
@Query("SELECT folder.*" +
|
@Query("SELECT folder.*" +
|
||||||
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
||||||
|
", COUNT(rule.id) AS rules" +
|
||||||
", COUNT(message.id) AS messages" +
|
", COUNT(message.id) AS messages" +
|
||||||
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
||||||
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
||||||
", (SELECT COUNT(operation.id) FROM operation WHERE operation.folder = folder.id AND operation.state = 'executing') AS executing" +
|
", COUNT(operation.id) AS executing" +
|
||||||
" FROM folder" +
|
" FROM folder" +
|
||||||
" LEFT JOIN account ON account.id = folder.account" +
|
" LEFT JOIN account ON account.id = folder.account" +
|
||||||
|
" LEFT JOIN rule ON rule.folder = folder.id AND rule.enabled" +
|
||||||
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
||||||
|
" LEFT JOIN operation ON operation.folder = folder.id AND operation.state = 'executing'" +
|
||||||
" WHERE folder.account = :account AND account.synchronize" +
|
" WHERE folder.account = :account AND account.synchronize" +
|
||||||
" GROUP BY folder.id")
|
" GROUP BY folder.id")
|
||||||
List<TupleFolderEx> getFoldersEx(long account);
|
List<TupleFolderEx> getFoldersEx(long account);
|
||||||
|
@ -65,13 +68,16 @@ public interface DaoFolder {
|
||||||
|
|
||||||
@Query("SELECT folder.*" +
|
@Query("SELECT folder.*" +
|
||||||
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
||||||
|
", COUNT(rule.id) AS rules" +
|
||||||
", COUNT(message.id) AS messages" +
|
", COUNT(message.id) AS messages" +
|
||||||
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
||||||
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
||||||
", (SELECT COUNT(operation.id) FROM operation WHERE operation.folder = folder.id AND operation.state = 'executing') AS executing" +
|
", COUNT(operation.id) AS executing" +
|
||||||
" FROM folder" +
|
" FROM folder" +
|
||||||
" LEFT JOIN account ON account.id = folder.account" +
|
" LEFT JOIN account ON account.id = folder.account" +
|
||||||
|
" LEFT JOIN rule ON rule.folder = folder.id AND rule.enabled" +
|
||||||
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
||||||
|
" LEFT JOIN operation ON operation.folder = folder.id AND operation.state = 'executing'" +
|
||||||
" WHERE CASE WHEN :account IS NULL" +
|
" WHERE CASE WHEN :account IS NULL" +
|
||||||
" THEN folder.unified AND account.synchronize" +
|
" THEN folder.unified AND account.synchronize" +
|
||||||
" ELSE folder.account = :account AND account.synchronize" +
|
" ELSE folder.account = :account AND account.synchronize" +
|
||||||
|
@ -81,13 +87,16 @@ public interface DaoFolder {
|
||||||
|
|
||||||
@Query("SELECT folder.*" +
|
@Query("SELECT folder.*" +
|
||||||
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
||||||
|
", COUNT(rule.id) AS rules" +
|
||||||
", COUNT(message.id) AS messages" +
|
", COUNT(message.id) AS messages" +
|
||||||
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
||||||
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
||||||
", (SELECT COUNT(operation.id) FROM operation WHERE operation.folder = folder.id AND operation.state = 'executing') AS executing" +
|
", COUNT(operation.id) AS executing" +
|
||||||
" FROM folder" +
|
" FROM folder" +
|
||||||
" JOIN account ON account.id = folder.account" +
|
" JOIN account ON account.id = folder.account" +
|
||||||
|
" LEFT JOIN rule ON rule.folder = folder.id AND rule.enabled" +
|
||||||
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
||||||
|
" LEFT JOIN operation ON operation.folder = folder.id AND operation.state = 'executing'" +
|
||||||
" WHERE account.`synchronize`" +
|
" WHERE account.`synchronize`" +
|
||||||
" AND folder.unified" +
|
" AND folder.unified" +
|
||||||
" GROUP BY folder.id")
|
" GROUP BY folder.id")
|
||||||
|
@ -120,14 +129,18 @@ public interface DaoFolder {
|
||||||
|
|
||||||
@Query("SELECT folder.*" +
|
@Query("SELECT folder.*" +
|
||||||
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
", account.id AS accountId, account.`order` AS accountOrder, account.name AS accountName, account.color AS accountColor, account.state AS accountState" +
|
||||||
|
", COUNT(rule.id) AS rules" +
|
||||||
", COUNT(message.id) AS messages" +
|
", COUNT(message.id) AS messages" +
|
||||||
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
", SUM(CASE WHEN message.content = 1 THEN 1 ELSE 0 END) AS content" +
|
||||||
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
", SUM(CASE WHEN message.ui_seen = 0 THEN 1 ELSE 0 END) AS unseen" +
|
||||||
", (SELECT COUNT(operation.id) FROM operation WHERE operation.folder = folder.id AND operation.state = 'executing') AS executing" +
|
", COUNT(operation.id) AS executing" +
|
||||||
" FROM folder" +
|
" FROM folder" +
|
||||||
" LEFT JOIN account ON account.id = folder.account" +
|
" LEFT JOIN account ON account.id = folder.account" +
|
||||||
|
" LEFT JOIN rule ON rule.folder = folder.id AND rule.enabled" +
|
||||||
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
||||||
" WHERE folder.id = :id")
|
" LEFT JOIN operation ON operation.folder = folder.id AND operation.state = 'executing'" +
|
||||||
|
" WHERE folder.id = :id" +
|
||||||
|
" GROUP BY folder.id")
|
||||||
LiveData<TupleFolderEx> liveFolderEx(long id);
|
LiveData<TupleFolderEx> liveFolderEx(long id);
|
||||||
|
|
||||||
@Query("SELECT * FROM folder ORDER BY account, name COLLATE NOCASE")
|
@Query("SELECT * FROM folder ORDER BY account, name COLLATE NOCASE")
|
||||||
|
|
|
@ -42,6 +42,7 @@ public class TupleFolderEx extends EntityFolder implements Serializable {
|
||||||
public String accountName;
|
public String accountName;
|
||||||
public Integer accountColor;
|
public Integer accountColor;
|
||||||
public String accountState;
|
public String accountState;
|
||||||
|
public int rules;
|
||||||
public int messages;
|
public int messages;
|
||||||
public int content;
|
public int content;
|
||||||
public int unseen;
|
public int unseen;
|
||||||
|
@ -68,6 +69,7 @@ public class TupleFolderEx extends EntityFolder implements Serializable {
|
||||||
Objects.equals(this.accountName, other.accountName) &&
|
Objects.equals(this.accountName, other.accountName) &&
|
||||||
Objects.equals(this.accountColor, other.accountColor) &&
|
Objects.equals(this.accountColor, other.accountColor) &&
|
||||||
Objects.equals(this.accountState, other.accountState) &&
|
Objects.equals(this.accountState, other.accountState) &&
|
||||||
|
this.rules == other.rules &&
|
||||||
this.messages == other.messages &&
|
this.messages == other.messages &&
|
||||||
this.content == other.content &&
|
this.content == other.content &&
|
||||||
this.unseen == other.unseen &&
|
this.unseen == other.unseen &&
|
||||||
|
|
|
@ -23,9 +23,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_unified"
|
android:contentDescription="@string/title_legend_unified"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_folder_special_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:srcCompat="@drawable/baseline_folder_special_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvUnified"
|
android:id="@+id/tvUnified"
|
||||||
|
@ -45,9 +45,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_inbox"
|
android:contentDescription="@string/title_legend_inbox"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_inbox_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivType" />
|
app:layout_constraintTop_toBottomOf="@id/ivType"
|
||||||
|
app:srcCompat="@drawable/baseline_inbox_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvInbox"
|
android:id="@+id/tvInbox"
|
||||||
|
@ -67,9 +67,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_drafts"
|
android:contentDescription="@string/title_legend_drafts"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_drafts_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivInbox" />
|
app:layout_constraintTop_toBottomOf="@id/ivInbox"
|
||||||
|
app:srcCompat="@drawable/baseline_drafts_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvDrafts"
|
android:id="@+id/tvDrafts"
|
||||||
|
@ -89,9 +89,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_sent"
|
android:contentDescription="@string/title_legend_sent"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_send_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivDrafts" />
|
app:layout_constraintTop_toBottomOf="@id/ivDrafts"
|
||||||
|
app:srcCompat="@drawable/baseline_send_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvSent"
|
android:id="@+id/tvSent"
|
||||||
|
@ -111,9 +111,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_archive"
|
android:contentDescription="@string/title_legend_archive"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_archive_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivSent" />
|
app:layout_constraintTop_toBottomOf="@id/ivSent"
|
||||||
|
app:srcCompat="@drawable/baseline_archive_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvArchive"
|
android:id="@+id/tvArchive"
|
||||||
|
@ -133,9 +133,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_trash"
|
android:contentDescription="@string/title_legend_trash"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_delete_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivArchive" />
|
app:layout_constraintTop_toBottomOf="@id/ivArchive"
|
||||||
|
app:srcCompat="@drawable/baseline_delete_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvTrash"
|
android:id="@+id/tvTrash"
|
||||||
|
@ -155,9 +155,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_junk"
|
android:contentDescription="@string/title_legend_junk"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_flag_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivTrash" />
|
app:layout_constraintTop_toBottomOf="@id/ivTrash"
|
||||||
|
app:srcCompat="@drawable/baseline_flag_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvJunk"
|
android:id="@+id/tvJunk"
|
||||||
|
@ -177,9 +177,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_primary"
|
android:contentDescription="@string/title_legend_primary"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_star_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivJunk" />
|
app:layout_constraintTop_toBottomOf="@id/ivJunk"
|
||||||
|
app:srcCompat="@drawable/baseline_star_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvPrimary"
|
android:id="@+id/tvPrimary"
|
||||||
|
@ -193,37 +193,15 @@
|
||||||
app:layout_constraintStart_toEndOf="@id/ivPrimary"
|
app:layout_constraintStart_toEndOf="@id/ivPrimary"
|
||||||
app:layout_constraintTop_toTopOf="@id/ivPrimary" />
|
app:layout_constraintTop_toTopOf="@id/ivPrimary" />
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/ivNotify"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:contentDescription="@string/title_legend_notify"
|
|
||||||
android:padding="12dp"
|
|
||||||
app:srcCompat="@drawable/baseline_notifications_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivPrimary" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/tvNotify"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:gravity="center_vertical"
|
|
||||||
android:text="@string/title_legend_notify"
|
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@id/ivNotify"
|
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
|
||||||
app:layout_constraintStart_toEndOf="@id/ivNotify"
|
|
||||||
app:layout_constraintTop_toTopOf="@id/ivNotify" />
|
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/ivSubscribed"
|
android:id="@+id/ivSubscribed"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_subscribed"
|
android:contentDescription="@string/title_legend_subscribed"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_bookmark_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivNotify" />
|
app:layout_constraintTop_toBottomOf="@id/ivPrimary"
|
||||||
|
app:srcCompat="@drawable/baseline_bookmark_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvSubscribed"
|
android:id="@+id/tvSubscribed"
|
||||||
|
@ -237,6 +215,50 @@
|
||||||
app:layout_constraintStart_toEndOf="@id/ivSubscribed"
|
app:layout_constraintStart_toEndOf="@id/ivSubscribed"
|
||||||
app:layout_constraintTop_toTopOf="@id/ivSubscribed" />
|
app:layout_constraintTop_toTopOf="@id/ivSubscribed" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/ivRule"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:contentDescription="@string/title_edit_rules"
|
||||||
|
android:padding="12dp"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/ivSubscribed"
|
||||||
|
app:srcCompat="@drawable/baseline_filter_list_24" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvRule"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:text="@string/title_legend_rule"
|
||||||
|
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/ivRule"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/ivRule"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/ivRule" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/ivNotify"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:contentDescription="@string/title_legend_notify"
|
||||||
|
android:padding="12dp"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/ivRule"
|
||||||
|
app:srcCompat="@drawable/baseline_notifications_24" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/tvNotify"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:text="@string/title_legend_notify"
|
||||||
|
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@id/ivNotify"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/ivNotify"
|
||||||
|
app:layout_constraintTop_toTopOf="@id/ivNotify" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvDownloadFetch"
|
android:id="@+id/tvDownloadFetch"
|
||||||
android:layout_width="48dp"
|
android:layout_width="48dp"
|
||||||
|
@ -254,10 +276,10 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_download_fetch"
|
android:contentDescription="@string/title_legend_download_fetch"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_mail_outline_24"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/tvDownloadFetchLegend"
|
app:layout_constraintBottom_toBottomOf="@+id/tvDownloadFetchLegend"
|
||||||
app:layout_constraintStart_toEndOf="@id/tvDownloadFetch"
|
app:layout_constraintStart_toEndOf="@id/tvDownloadFetch"
|
||||||
app:layout_constraintTop_toTopOf="@+id/tvDownloadFetchLegend" />
|
app:layout_constraintTop_toTopOf="@+id/tvDownloadFetchLegend"
|
||||||
|
app:srcCompat="@drawable/baseline_mail_outline_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvDownloadFetchLegend"
|
android:id="@+id/tvDownloadFetchLegend"
|
||||||
|
@ -269,7 +291,7 @@
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
||||||
app:layout_constraintEnd_toEndOf="parent"
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
app:layout_constraintStart_toEndOf="@id/ivDownloadFetch"
|
app:layout_constraintStart_toEndOf="@id/ivDownloadFetch"
|
||||||
app:layout_constraintTop_toBottomOf="@id/ivSubscribed" />
|
app:layout_constraintTop_toBottomOf="@id/ivNotify" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvSyncKeep"
|
android:id="@+id/tvSyncKeep"
|
||||||
|
@ -288,10 +310,10 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_sync_keep"
|
android:contentDescription="@string/title_legend_sync_keep"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_sync_24"
|
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/tvSyncKeepLegend"
|
app:layout_constraintBottom_toBottomOf="@+id/tvSyncKeepLegend"
|
||||||
app:layout_constraintStart_toEndOf="@id/tvSyncKeep"
|
app:layout_constraintStart_toEndOf="@id/tvSyncKeep"
|
||||||
app:layout_constraintTop_toTopOf="@+id/tvSyncKeepLegend" />
|
app:layout_constraintTop_toTopOf="@+id/tvSyncKeepLegend"
|
||||||
|
app:srcCompat="@drawable/baseline_sync_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvSyncKeepLegend"
|
android:id="@+id/tvSyncKeepLegend"
|
||||||
|
@ -311,9 +333,9 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:contentDescription="@string/title_legend_stop"
|
android:contentDescription="@string/title_legend_stop"
|
||||||
android:padding="12dp"
|
android:padding="12dp"
|
||||||
app:srcCompat="@drawable/baseline_stop_24"
|
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/tvSyncKeepLegend" />
|
app:layout_constraintTop_toBottomOf="@id/tvSyncKeepLegend"
|
||||||
|
app:srcCompat="@drawable/baseline_stop_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvStop"
|
android:id="@+id/tvStop"
|
||||||
|
|
|
@ -74,7 +74,7 @@
|
||||||
app:srcCompat="@drawable/baseline_folder_special_24" />
|
app:srcCompat="@drawable/baseline_folder_special_24" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/ivNotify"
|
android:id="@+id/ivSubscribed"
|
||||||
android:layout_width="30dp"
|
android:layout_width="30dp"
|
||||||
android:layout_height="24dp"
|
android:layout_height="24dp"
|
||||||
android:contentDescription="@string/title_legend_notify"
|
android:contentDescription="@string/title_legend_notify"
|
||||||
|
@ -82,18 +82,29 @@
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/tvName"
|
app:layout_constraintBottom_toBottomOf="@+id/tvName"
|
||||||
app:layout_constraintStart_toEndOf="@id/ivUnified"
|
app:layout_constraintStart_toEndOf="@id/ivUnified"
|
||||||
app:layout_constraintTop_toTopOf="@+id/tvName"
|
app:layout_constraintTop_toTopOf="@+id/tvName"
|
||||||
app:srcCompat="@drawable/baseline_notifications_24" />
|
app:srcCompat="@drawable/baseline_bookmark_24" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/ivSubscribed"
|
android:id="@+id/ivRule"
|
||||||
|
android:layout_width="30dp"
|
||||||
|
android:layout_height="24dp"
|
||||||
|
android:contentDescription="@string/title_edit_rules"
|
||||||
|
android:paddingEnd="6dp"
|
||||||
|
app:layout_constraintBottom_toBottomOf="@+id/tvName"
|
||||||
|
app:layout_constraintStart_toEndOf="@id/ivSubscribed"
|
||||||
|
app:layout_constraintTop_toTopOf="@+id/tvName"
|
||||||
|
app:srcCompat="@drawable/baseline_filter_list_24" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/ivNotify"
|
||||||
android:layout_width="30dp"
|
android:layout_width="30dp"
|
||||||
android:layout_height="24dp"
|
android:layout_height="24dp"
|
||||||
android:contentDescription="@string/title_legend_notify"
|
android:contentDescription="@string/title_legend_notify"
|
||||||
android:paddingEnd="6dp"
|
android:paddingEnd="6dp"
|
||||||
app:layout_constraintBottom_toBottomOf="@+id/tvName"
|
app:layout_constraintBottom_toBottomOf="@+id/tvName"
|
||||||
app:layout_constraintStart_toEndOf="@id/ivNotify"
|
app:layout_constraintStart_toEndOf="@id/ivRule"
|
||||||
app:layout_constraintTop_toTopOf="@+id/tvName"
|
app:layout_constraintTop_toTopOf="@+id/tvName"
|
||||||
app:srcCompat="@drawable/baseline_bookmark_24" />
|
app:srcCompat="@drawable/baseline_notifications_24" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/tvName"
|
android:id="@+id/tvName"
|
||||||
|
@ -108,7 +119,7 @@
|
||||||
android:text="Name"
|
android:text="Name"
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
||||||
app:layout_constraintEnd_toStartOf="@+id/tvMessages"
|
app:layout_constraintEnd_toStartOf="@+id/tvMessages"
|
||||||
app:layout_constraintStart_toEndOf="@id/ivSubscribed"
|
app:layout_constraintStart_toEndOf="@id/ivNotify"
|
||||||
app:layout_constraintTop_toTopOf="parent" />
|
app:layout_constraintTop_toTopOf="parent" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
|
|
@ -621,8 +621,9 @@
|
||||||
<string name="title_legend_trash">Trash</string>
|
<string name="title_legend_trash">Trash</string>
|
||||||
<string name="title_legend_junk">Spam</string>
|
<string name="title_legend_junk">Spam</string>
|
||||||
<string name="title_legend_primary">Primary</string>
|
<string name="title_legend_primary">Primary</string>
|
||||||
<string name="title_legend_notify">Notify new messages</string>
|
|
||||||
<string name="title_legend_subscribed">Subscribed to</string>
|
<string name="title_legend_subscribed">Subscribed to</string>
|
||||||
|
<string name="title_legend_rule">Has rules</string>
|
||||||
|
<string name="title_legend_notify">Notify new messages</string>
|
||||||
<string name="title_legend_sync_keep">Number of days to synchronize / to keep messages</string>
|
<string name="title_legend_sync_keep">Number of days to synchronize / to keep messages</string>
|
||||||
<string name="title_legend_download_fetch">Number of message downloaded / headers fetched</string>
|
<string name="title_legend_download_fetch">Number of message downloaded / headers fetched</string>
|
||||||
<string name="title_legend_stop">Stop processing rules</string>
|
<string name="title_legend_stop">Stop processing rules</string>
|
||||||
|
|
Loading…
Reference in a new issue