]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionModel.java
avoid overlapping observations
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / activity / NewTransactionModel.java
index 9f5cd8c49108e622e288da4d066ad35e8e510bb4..34d3a8493a3a9e782de7d315b1f25d9e6656d7bb 100644 (file)
@@ -72,9 +72,13 @@ public class NewTransactionModel extends ViewModel {
      */
     private final HashMap<String, List<Item>> slots = new HashMap<>();
     private int checkHoldCounter = 0;
-    private Observer<MobileLedgerProfile> profileObserver = profile ->showCurrency.postValue(profile.getShowCommodityByDefault());
+    private boolean observingDataProfile;
+    private Observer<MobileLedgerProfile> profileObserver =
+            profile -> showCurrency.postValue(profile.getShowCommodityByDefault());
     public void observeDataProfile(LifecycleOwner activity) {
-        Data.profile.observe(activity, profileObserver);
+        if (!observingDataProfile)
+            Data.profile.observe(activity, profileObserver);
+        observingDataProfile = true;
     }
     void holdSubmittableChecks() {
         checkHoldCounter++;