import net.ktnx.mobileledger.model.LedgerTransaction;
import net.ktnx.mobileledger.model.LedgerTransactionAccount;
import net.ktnx.mobileledger.model.MobileLedgerProfile;
+import net.ktnx.mobileledger.ui.AutoCompleteTextViewWithClear;
import net.ktnx.mobileledger.ui.DatePickerFragment;
import net.ktnx.mobileledger.ui.OnSwipeTouchListener;
import net.ktnx.mobileledger.utils.Globals;
});
tvDescription = findViewById(R.id.new_transaction_description);
MLDB.hookAutocompletionAdapter(this, tvDescription, MLDB.DESCRIPTION_HISTORY_TABLE,
- "description", false, findViewById(R.id.new_transaction_acc_1), this, mProfile);
+ "description", false, this, mProfile);
hookTextChangeListener(tvDescription);
progress = findViewById(R.id.save_transaction_progress);
while (table.getChildCount() < 2) {
doAddAccountRow(false);
}
+
+ check_transaction_submittable();
}
@Override
protected void initProfile() {
Date date;
if (dateString.isEmpty()) date = new Date();
else date = Globals.parseLedgerDate(dateString);
- LedgerTransaction tr = new LedgerTransaction(null, date, tvDescription.getText().toString(), mProfile);
+ LedgerTransaction tr =
+ new LedgerTransaction(null, date, tvDescription.getText().toString(), mProfile);
TableLayout table = findViewById(R.id.new_transaction_accounts_table);
LedgerTransactionAccount emptyAmountAccount = null;
}
private TableRow doAddAccountRow(boolean focus) {
- final AutoCompleteTextView acc = new AutoCompleteTextView(this);
+ final AutoCompleteTextView acc = new AutoCompleteTextViewWithClear(this);
acc.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT,
TableRow.LayoutParams.WRAP_CONTENT, 9f));
acc.setHint(R.string.new_transaction_account_hint);
if (focus) acc.requestFocus();
hookSwipeListener(row);
- MLDB.hookAutocompletionAdapter(this, acc, MLDB.ACCOUNTS_TABLE, "name", true, amt, null,
- mProfile);
+ MLDB.hookAutocompletionAdapter(this, acc, MLDB.ACCOUNTS_TABLE, "name", true,
+ description -> amt.requestFocus(), mProfile);
hookTextChangeListener(acc);
hookTextChangeListener(amt);