X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fasync%2FTransactionAccumulator.java;h=b8c8e6966dca39f92844fc277bec770294699d84;hb=9a56eed6dcbfe4434a9a46b198320c16b288d86f;hp=1b96425681642a25580c13c7a8d2518e035051ae;hpb=8c70bbbbe73f4246f4af217a0d8b81a859a4bba7;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java b/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java index 1b964256..b8c8e696 100644 --- a/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java +++ b/app/src/main/java/net/ktnx/mobileledger/async/TransactionAccumulator.java @@ -30,13 +30,17 @@ public class TransactionAccumulator { private SimpleDate earliestDate, latestDate; private SimpleDate lastDate = SimpleDate.today(); private boolean done; + private int transactionCount = 0; public TransactionAccumulator(MainModel model) { this.model = model; } public void put(LedgerTransaction transaction, SimpleDate date) { if (done) throw new IllegalStateException("Can't put new items after done()"); + + // first item if (null == latestDate) { + list.add(new TransactionListItem()); latestDate = date; list.add(new TransactionListItem(date, SimpleDate.today().month != date.month)); } @@ -50,10 +54,11 @@ public class TransactionAccumulator { list.add(new TransactionListItem(transaction)); lastDate = date; + transactionCount++; } public void done() { done = true; - model.setDisplayedTransactions(list); + model.setDisplayedTransactions(list, transactionCount); model.setFirstTransactionDate(earliestDate); model.setLastTransactionDate(latestDate); }