diff --git a/app/src/main/java/eu/faircode/email/DaoAccount.java b/app/src/main/java/eu/faircode/email/DaoAccount.java index 5848e21a17..4332474e31 100644 --- a/app/src/main/java/eu/faircode/email/DaoAccount.java +++ b/app/src/main/java/eu/faircode/email/DaoAccount.java @@ -29,10 +29,12 @@ import java.util.List; @Dao public interface DaoAccount { - @Query("SELECT * FROM account") + @Query("SELECT * FROM account" + + " ORDER BY `order`, `primary` DESC, name COLLATE NOCASE") List getAccounts(); - @Query("SELECT * FROM account WHERE synchronize") + @Query("SELECT * FROM account WHERE synchronize" + + " ORDER BY `order`, `primary` DESC, name COLLATE NOCASE") List getSynchronizingAccounts(); @Query("SELECT * FROM account WHERE tbd = 1") diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 171cb4b7e9..7e43736e2f 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -1159,18 +1159,6 @@ public class FragmentMessages extends FragmentBase { result.accounts = db.account().getSynchronizingAccounts(); - final Collator collator = Collator.getInstance(Locale.getDefault()); - collator.setStrength(Collator.SECONDARY); // Case insensitive, process accents etc - Collections.sort(result.accounts, new Comparator() { - @Override - public int compare(EntityAccount a1, EntityAccount a2) { - int p = -a1.primary.compareTo(a2.primary); - if (p != 0) - return p; - return collator.compare(a1.name, a2.name); - } - }); - for (EntityAccount account : result.accounts) { List targets = new ArrayList<>(); List folders = db.folder().getFolders(account.id);