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=631205f24448f0501aef8df95362bbf5db8c4802;hp=82082a903efd3fc8e715dfaf11c3bac142d62e3b;hb=bb9d4a9c9708a568dddf2b1c637ae54ec53caa25;hpb=3b7d0b3a96e48343b4500466d4bb3f5b62e28dde 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 82082a90..631205f2 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 @@ -20,11 +20,6 @@ package net.ktnx.mobileledger.ui.transaction_list; import android.content.Context; import android.database.MatrixCursor; import android.os.Bundle; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import com.google.android.material.floatingactionbutton.FloatingActionButton; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; @@ -36,6 +31,8 @@ import android.view.inputmethod.InputMethodManager; import android.widget.AutoCompleteTextView; import android.widget.Toast; +import com.google.android.material.floatingactionbutton.FloatingActionButton; + import net.ktnx.mobileledger.R; import net.ktnx.mobileledger.model.Data; import net.ktnx.mobileledger.ui.MobileLedgerListFragment; @@ -48,6 +45,11 @@ import net.ktnx.mobileledger.utils.ObservableValue; import java.util.Observable; import java.util.Observer; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import static android.content.Context.INPUT_METHOD_SERVICE; public class TransactionListFragment extends MobileLedgerListFragment { @@ -58,6 +60,7 @@ public class TransactionListFragment extends MobileLedgerListFragment { private View vAccountFilter; private AutoCompleteTextView accNameFilter; private Observer backgroundTaskCountObserver; + private Observer accountFilterObserver; private static void update(Observable o, Object arg) { } @Override @@ -184,18 +187,16 @@ public class TransactionListFragment extends MobileLedgerListFragment { Globals.hideSoftKeyboard(mActivity); }); - accountFilter.addObserver((o, arg) -> { - String accountName = accountFilter.get(); - modelAdapter.setBoldAccountName(accountName); - setShowOnlyAccountName(accountName); - TransactionListViewModel.scheduleTransactionListReload(); - if (menuTransactionListFilter != null) menuTransactionListFilter.setVisible(false); - }); - - Data.profile.addObserver((o, arg) -> mActivity.runOnUiThread(() -> { - Log.d("transactions", "requesting list reload"); - TransactionListViewModel.scheduleTransactionListReload(); - })); + if (accountFilterObserver == null) { + accountFilterObserver = (o, arg) -> { + String accountName = accountFilter.get(); + modelAdapter.setBoldAccountName(accountName); + setShowOnlyAccountName(accountName); + TransactionListViewModel.scheduleTransactionListReload(); + if (menuTransactionListFilter != null) menuTransactionListFilter.setVisible(false); + }; + accountFilter.addObserver(accountFilterObserver); + } TransactionListViewModel.scheduleTransactionListReload(); TransactionListViewModel.updating.addObserver(