import android.widget.TextView;
import net.ktnx.mobileledger.R;
+import net.ktnx.mobileledger.model.Data;
import net.ktnx.mobileledger.model.LedgerTransaction;
import net.ktnx.mobileledger.model.LedgerTransactionAccount;
import net.ktnx.mobileledger.model.TransactionListItem;
import static net.ktnx.mobileledger.utils.DimensionUtils.dp2px;
public class TransactionListAdapter extends RecyclerView.Adapter<TransactionRowHolder> {
- private String boldAccountName;
public void onBindViewHolder(@NonNull TransactionRowHolder holder, int position) {
TransactionListItem item = TransactionListViewModel.getTransactionListItem(position);
TransactionLoader loader = new TransactionLoader();
loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,
- new TransactionLoaderParams(tr, holder, position, boldAccountName,
+ new TransactionLoaderParams(tr, holder, position, Data.accountFilter.get(),
item.isOdd()));
// WORKAROUND what seems to be a bug in CardHolder somewhere
@Override
public int getItemCount() {
- return TransactionListViewModel.getTransactionCount() + 1;
+ return Data.transactions.size() + 1;
}
- public void setBoldAccountName(String boldAccountName) {
- this.boldAccountName = boldAccountName;
- }
- public void resetBoldAccountName() {
- this.boldAccountName = null;
- }
-
enum LoaderStep {HEAD, ACCOUNTS, DONE}
-
private static class TransactionLoader
extends AsyncTask<TransactionLoaderParams, TransactionLoaderStep, Void> {
@Override
LedgerTransaction tr = p[0].transaction;
boolean odd = p[0].odd;
- SQLiteDatabase db = MLDB.getReadableDatabase();
+ SQLiteDatabase db = MLDB.getDatabase();
tr.loadData(db);
publishProgress(new TransactionLoaderStep(p[0].holder, p[0].position, tr, odd));