X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Ftransaction_list%2FTransactionListFragment.java;h=9ec46e79f9fbbc1cca26590ebeb61e9a5812f1b7;hp=a15650ae912df4975ffe0d7dadd1651d5c8c3792;hb=19867626f491b4930a1c02a58ad515b52b75596d;hpb=198f2762d2236a57cec413322c0bde6985ead88a diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/transaction_list/TransactionListFragment.java b/app/src/main/java/net/ktnx/mobileledger/ui/transaction_list/TransactionListFragment.java index a15650ae..9ec46e79 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/transaction_list/TransactionListFragment.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/transaction_list/TransactionListFragment.java @@ -120,8 +120,6 @@ public class TransactionListFragment extends MobileLedgerListFragment { Log.d("flow", "TransactionListFragment.onActivityCreated called"); super.onActivityCreated(savedInstanceState); - mActivity.markDrawerItemCurrent(R.id.nav_latest_transactions); - swiper = mActivity.findViewById(R.id.transaction_swipe); if (swiper == null) throw new RuntimeException("Can't get hold on the swipe layout"); root = mActivity.findViewById(R.id.transaction_root); @@ -131,20 +129,16 @@ public class TransactionListFragment extends MobileLedgerListFragment { modelAdapter = new TransactionListAdapter(); modelAdapter.setBoldAccountName(mShowOnlyAccountName); + root.setAdapter(modelAdapter); FloatingActionButton fab = mActivity.findViewById(R.id.btn_add_transaction); - RecyclerView root = mActivity.findViewById(R.id.transaction_root); - root.setAdapter(modelAdapter); - fab.show(); root.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { - if (fab != null) { - if (dy < 0) fab.show(); - if (dy > 0) fab.hide(); - } + if (dy < 0) fab.show(); + if (dy > 0) fab.hide(); } }); @@ -164,12 +158,12 @@ public class TransactionListFragment extends MobileLedgerListFragment { accNameFilter = mActivity.findViewById(R.id.transaction_filter_account_name); TransactionListFragment me = this; - MLDB.hook_autocompletion_adapter(mActivity, accNameFilter, "accounts", "name"); + MLDB.hook_autocompletion_adapter(mActivity, accNameFilter, "accounts", "name", true); accNameFilter.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { - Log.d("tmp", "direct onItemClick"); - ((TransactionListViewModel) model).scheduleTransactionListReload(mActivity); +// Log.d("tmp", "direct onItemClick"); + TransactionListViewModel.scheduleTransactionListReload(mActivity); MatrixCursor mc = (MatrixCursor) parent.getItemAtPosition(position); modelAdapter.setBoldAccountName(mc.getString(1)); modelAdapter.notifyDataSetChanged(); @@ -183,6 +177,16 @@ public class TransactionListFragment extends MobileLedgerListFragment { Log.d("flow", String.format("Account filter set to '%s'", mShowOnlyAccountName)); } + Data.profile.addObserver(new Observer() { + @Override + public void update(Observable o, Object arg) { + mActivity.runOnUiThread(() -> { + Log.d("transactions", "requesting list reload"); + TransactionListViewModel.scheduleTransactionListReload(mActivity); + }); + } + }); + TransactionListViewModel.scheduleTransactionListReload(mActivity); TransactionListViewModel.updating.addObserver(new Observer() { @Override