X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FNewTransactionItemHolder.java;h=d7017e21a6816056c18a7fc104eff8639b2ac97a;hp=91d45031bd373e0f788be3813606cd7df47457c3;hb=6d8645bc5ffd9ad56124ddc21b2477c687c15ff7;hpb=3229d2d25ab4310f211dfb834cf531077585ae2e diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java index 91d45031..d7017e21 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/NewTransactionItemHolder.java @@ -91,6 +91,7 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder private Observer currencyGapObserver; private Observer localeObserver; private Observer currencyObserver; + private Observer showCurrencyObserver; private boolean inUpdate = false; private boolean syncingData = false; private View commentButton; @@ -353,6 +354,16 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder }; currencyObserver = this::setCurrency; + + showCurrencyObserver = showCurrency -> { + if (showCurrency) { + tvCurrency.setVisibility(View.VISIBLE); + } + else { + tvCurrency.setVisibility(View.GONE); + setCurrencyString(null); + } + }; } private void updateCurrencyPositionAndPadding(Currency.Position position, boolean hasGap) { ConstraintLayout.LayoutParams amountLP = @@ -552,6 +563,7 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder Data.currencyGap.removeObserver(currencyGapObserver); Data.locale.removeObserver(localeObserver); this.item.stopObservingCurrency(currencyObserver); + this.item.getModel().showCurrency.removeObserver(showCurrencyObserver); this.item = null; } @@ -609,6 +621,7 @@ class NewTransactionItemHolder extends RecyclerView.ViewHolder Data.currencyGap.observe(activity, currencyGapObserver); Data.locale.observe(activity, localeObserver); item.observeCurrency(activity, currencyObserver); + item.getModel().showCurrency.observe(activity, showCurrencyObserver); } } finally {