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);
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();
}
});
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);
+ TransactionListViewModel.scheduleTransactionListReload(mActivity);
MatrixCursor mc = (MatrixCursor) parent.getItemAtPosition(position);
modelAdapter.setBoldAccountName(mc.getString(1));
modelAdapter.notifyDataSetChanged();
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