Display navigation folders on accounts start screen

This commit is contained in:
M66B
2024-02-15 19:50:57 +01:00
parent 7916ff1bac
commit 90baa403e7
7 changed files with 293 additions and 268 deletions

View File

@@ -58,9 +58,12 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Locale;
import java.util.Objects;
public class FragmentAccounts extends FragmentBase {
@@ -183,8 +186,8 @@ public class FragmentAccounts extends FragmentBase {
if (!getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED))
return null;
TupleAccountEx prev = adapter.getItemAtPosition(pos - 1);
TupleAccountEx account = adapter.getItemAtPosition(pos);
TupleAccountFolder prev = adapter.getItemAtPosition(pos - 1);
TupleAccountFolder account = adapter.getItemAtPosition(pos);
if (pos > 0 && prev == null)
return null;
if (account == null)
@@ -309,15 +312,15 @@ public class FragmentAccounts extends FragmentBase {
final DB db = DB.getInstance(context);
// Observe accounts
db.account().liveAccountsEx(settings)
.observe(getViewLifecycleOwner(), new Observer<List<TupleAccountEx>>() {
db.account().liveAccountFolder(settings)
.observe(getViewLifecycleOwner(), new Observer<List<TupleAccountFolder>>() {
@Override
public void onChanged(@Nullable List<TupleAccountEx> accounts) {
public void onChanged(@Nullable List<TupleAccountFolder> accounts) {
if (accounts == null)
accounts = new ArrayList<>();
boolean authorized = true;
for (TupleAccountEx account : accounts)
for (TupleAccountFolder account : accounts)
if (account.auth_type != AUTH_TYPE_PASSWORD &&
!Helper.hasPermissions(getContext(), Helper.getOAuthPermissions())) {
authorized = false;