/*
- * Copyright © 2019 Damyan Ivanov.
+ * Copyright © 2020 Damyan Ivanov.
* This file is part of MoLe.
* MoLe is free software: you can distribute it and/or modify it
* under the term of the GNU General Public License as published by
drawer.addDrawerListener(barDrawerToggle);
}
barDrawerToggle.syncState();
- drawer.addDrawerListener(new DrawerLayout.DrawerListener() {
- @Override
- public void onDrawerSlide(@NonNull View drawerView, float slideOffset) {
- if (slideOffset > 0.2)
- fabHide();
- }
- @Override
- public void onDrawerOpened(@NonNull View drawerView) {
- fabHide();
- }
- @Override
- public void onDrawerClosed(@NonNull View drawerView) {
- fabShouldShow();
- }
- @Override
- public void onDrawerStateChanged(int newState) {}
- });
-
try {
PackageInfo pi = getApplicationContext().getPackageManager()
(v) -> mProfileListAdapter.flipEditingProfiles());
if (drawerListener == null) {
drawerListener = new DrawerLayout.SimpleDrawerListener() {
+ @Override
+ public void onDrawerSlide(@NonNull View drawerView, float slideOffset) {
+ if (slideOffset > 0.2)
+ fabHide();
+ }
@Override
public void onDrawerClosed(View drawerView) {
super.onDrawerClosed(drawerView);
mProfileListAdapter.setAnimationsEnabled(false);
mProfileListAdapter.editingProfiles.setValue(false);
+ Data.drawerOpen.setValue(false);
+ fabShouldShow();
}
@Override
public void onDrawerOpened(View drawerView) {
super.onDrawerOpened(drawerView);
mProfileListAdapter.setAnimationsEnabled(true);
+ Data.drawerOpen.setValue(true);
+ fabHide();
}
};
drawer.addDrawerListener(drawerListener);
}
+
+ Data.drawerOpen.observe(this, open -> {
+ if (open)
+ drawer.open();
+ else
+ drawer.close();
+ });
}
private void scheduleDataRetrievalIfStale(Date lastUpdate) {
long now = new Date().getTime();
if (!p.isPostingPermitted())
continue;
- ShortcutInfo si =
- new ShortcutInfo.Builder(this, "new_transaction_" + p.getUuid()).setShortLabel(
- p.getName())
- .setIcon(
- Icon.createWithResource(
- this,
- R.drawable.svg_thick_plus_white))
- .setIntent(
- new Intent(
- Intent.ACTION_VIEW,
- null,
- this,
- NewTransactionActivity.class).putExtra(
- "profile_uuid",
- p.getUuid()))
- .setRank(i)
- .build();
+ final ShortcutInfo.Builder builder =
+ new ShortcutInfo.Builder(this, "new_transaction_" + p.getUuid());
+ ShortcutInfo si = builder.setShortLabel(p.getName())
+ .setIcon(Icon.createWithResource(this,
+ R.drawable.thick_plus_icon))
+ .setIntent(new Intent(Intent.ACTION_VIEW, null, this,
+ NewTransactionActivity.class).putExtra("profile_uuid",
+ p.getUuid()))
+ .setRank(i)
+ .build();
shortcuts.add(si);
i++;
}
mProfileListAdapter.notifyDataSetChanged();
- drawer.closeDrawers();
-
Data.transactions.clear();
debug("transactions", "requesting list reload");
TransactionListViewModel.scheduleTransactionListReload();
public void fabShouldShow() {
if ((profile != null) && profile.isPostingPermitted() && !drawer.isOpen())
fab.show();
+ else
+ fabHide();
}
public void fabHide() {
fab.hide();
}
public void onAccountSummaryRowViewClicked(View view) {
ViewGroup row;
- if (view.getId() == R.id.account_expander)
- row = (ViewGroup) view.getParent()
- .getParent();
- else
- row = (ViewGroup) view.getParent();
+ switch (view.getId()) {
+ case R.id.account_expander:
+ row = (ViewGroup) view.getParent()
+ .getParent()
+ .getParent();
+ break;
+ case R.id.account_expander_container:
+ case R.id.account_row_acc_name:
+ row = (ViewGroup) view.getParent()
+ .getParent();
+ break;
+ default:
+ row = (ViewGroup) view.getParent();
+ break;
+ }
LedgerAccount acc = (LedgerAccount) row.getTag();
switch (view.getId()) {