diff --git a/app/src/main/java/eu/faircode/email/FragmentSetup.java b/app/src/main/java/eu/faircode/email/FragmentSetup.java index 32cefe517b..9f5a74c133 100644 --- a/app/src/main/java/eu/faircode/email/FragmentSetup.java +++ b/app/src/main/java/eu/faircode/email/FragmentSetup.java @@ -552,8 +552,27 @@ public class FragmentSetup extends FragmentBase { db.identity().liveComposableIdentities().observe(getViewLifecycleOwner(), new Observer>() { @Override public void onChanged(@Nullable List identities) { - boolean done = (identities != null && identities.size() > 0); - tvNoComposable.setVisibility(done ? View.GONE : View.VISIBLE); + Bundle args = new Bundle(); + + new SimpleTask>() { + @Override + protected List onExecute(Context context, Bundle args) throws Throwable { + DB db = DB.getInstance(context); + return db.account().getSynchronizingAccounts(); + } + + @Override + protected void onExecuted(Bundle args, List accounts) { + boolean done = ((accounts == null || accounts.size() == 0) || + (identities != null && identities.size() > 0)); + tvNoComposable.setVisibility(done ? View.GONE : View.VISIBLE); + } + + @Override + protected void onException(Bundle args, Throwable ex) { + // Ignored + } + }.execute(FragmentSetup.this, args, "setup:accounts"); } }); }