X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FNewTransactionActivity.java;h=a9d74727bd2d51f0a1056195490cb9a7059b84f4;hp=4e6ee19274a795d07100e6ead83c991579d87753;hb=2db4df9d7ee357f0b167d22d77a52059235f97f2;hpb=d4e592c5aed998f3b3e5afcf2150fb051aaf3e6f diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionActivity.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionActivity.java index 4e6ee192..a9d74727 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionActivity.java @@ -78,9 +78,11 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas fab = findViewById(R.id.fab); fab.setOnClickListener(v -> saveTransaction()); - Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true); + Objects.requireNonNull(getSupportActionBar()) + .setDisplayHomeAsUpEnabled(true); list = findViewById(R.id.new_transaction_accounts); - viewModel = ViewModelProviders.of(this).get(NewTransactionModel.class); + viewModel = ViewModelProviders.of(this) + .get(NewTransactionModel.class); listAdapter = new NewTransactionItemsAdapter(viewModel, mProfile); list.setAdapter(listAdapter); list.setLayoutManager(new LinearLayoutManager(this)); @@ -111,7 +113,9 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int direction) { if (viewModel.getAccountCount() == 2) Snackbar.make(list, R.string.msg_at_least_two_accounts_are_required, - Snackbar.LENGTH_LONG).setAction("Action", null).show(); + Snackbar.LENGTH_LONG) + .setAction("Action", null) + .show(); else { int pos = viewHolder.getAdapterPosition(); viewModel.removeItem(pos - 1); @@ -122,22 +126,23 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas } }).attachToRecyclerView(list); - viewModel.isSubmittable().observe(this, new Observer() { - @Override - public void onChanged(Boolean isSubmittable) { - if (isSubmittable) { - if (fab != null) { - fab.show(); - fab.setEnabled(true); - } - } - else { - if (fab != null) { - fab.hide(); - } - } - } - }); + viewModel.isSubmittable() + .observe(this, new Observer() { + @Override + public void onChanged(Boolean isSubmittable) { + if (isSubmittable) { + if (fab != null) { + fab.show(); + fab.setEnabled(true); + } + } + else { + if (fab != null) { + fab.hide(); + } + } + } + }); viewModel.checkTransactionSubmittable(listAdapter); } @Override @@ -180,14 +185,15 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas Date date = viewModel.getDate(); LedgerTransaction tr = - new LedgerTransaction(null, date, viewModel.getDescription(), - mProfile); + new LedgerTransaction(null, date, viewModel.getDescription(), mProfile); LedgerTransactionAccount emptyAmountAccount = null; float emptyAmountAccountBalance = 0; for (int i = 0; i < viewModel.getAccountCount(); i++) { LedgerTransactionAccount acc = viewModel.getAccount(i); - if (acc.getAccountName().trim().isEmpty()) continue; + if (acc.getAccountName() + .trim() + .isEmpty()) continue; if (acc.isAmountSet()) { emptyAmountAccountBalance += acc.getAmount(); @@ -220,7 +226,8 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas getMenuInflater().inflate(R.menu.new_transaction, menu); if (BuildConfig.DEBUG) { - menu.findItem(R.id.action_simulate_crash).setVisible(true); + menu.findItem(R.id.action_simulate_crash) + .setVisible(true); } return true; @@ -232,23 +239,22 @@ public class NewTransactionActivity extends ProfileThemedActivity implements Tas getResources().getDisplayMetrics())); } public void resetTransactionFromMenu(MenuItem item) { - resetForm(); + listAdapter.reset(); } @Override public void done(String error) { progress.setVisibility(View.INVISIBLE); debug("visuals", "hiding progress"); - if (error == null) resetForm(); - else Snackbar.make(list, error, BaseTransientBottomBar.LENGTH_LONG).show(); + if (error == null) + listAdapter.reset(); + else Snackbar.make(list, error, BaseTransientBottomBar.LENGTH_LONG) + .show(); listAdapter.toggleAllEditing(true); viewModel.checkTransactionSubmittable(listAdapter); } - private void resetForm() { - listAdapter.reset(); - } private class AsyncCrasher extends AsyncTask { @Override protected Void doInBackground(Void... voids) {