From 724247fe73c3248e4d999f9850d1716cf9ae4cbb Mon Sep 17 00:00:00 2001 From: Manfred Karrer Date: Tue, 8 Jan 2019 02:39:08 +0100 Subject: [PATCH] Don't show filtered currencies - For supporting Grin we want to add it to the next release but Grin is not launched yet (15.1.2018 is launch date). We deactivate the asset by using the filter message and enable it at launch date. To support that at the altcoin account screen this commit implements the required code. --- core/src/main/java/bisq/core/locale/CurrencyUtil.java | 4 +++- .../core/trade/statistics/AssetTradeActivityCheck.java | 7 +++++-- .../components/paymentmethods/CryptoCurrencyForm.java | 8 ++++++-- .../content/altcoinaccounts/AltCoinAccountsView.java | 7 ++++++- .../main/settings/preferences/PreferencesView.java | 8 ++++++-- 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/core/src/main/java/bisq/core/locale/CurrencyUtil.java b/core/src/main/java/bisq/core/locale/CurrencyUtil.java index b62510df8e6..5610687d4c5 100644 --- a/core/src/main/java/bisq/core/locale/CurrencyUtil.java +++ b/core/src/main/java/bisq/core/locale/CurrencyUtil.java @@ -20,6 +20,7 @@ import bisq.core.app.BisqEnvironment; import bisq.core.btc.BaseCurrencyNetwork; import bisq.core.dao.governance.asset.AssetService; +import bisq.core.filter.FilterManager; import bisq.asset.Asset; import bisq.asset.AssetRegistry; @@ -492,9 +493,10 @@ public static Optional findAsset(String tickerSymbol, BaseCurrencyNetwork } // Excludes all assets which got removed by DAO voting - public static List getActiveSortedCryptoCurrencies(AssetService assetService) { + public static List getActiveSortedCryptoCurrencies(AssetService assetService, FilterManager filterManager) { return getAllSortedCryptoCurrencies().stream() .filter(e -> e.getCode().equals("BSQ") || assetService.isActive(e.getCode())) + .filter(e -> !filterManager.isCurrencyBanned(e.getCode())) .collect(Collectors.toList()); } } diff --git a/core/src/main/java/bisq/core/trade/statistics/AssetTradeActivityCheck.java b/core/src/main/java/bisq/core/trade/statistics/AssetTradeActivityCheck.java index 717449c7f90..bf7b595b2ec 100644 --- a/core/src/main/java/bisq/core/trade/statistics/AssetTradeActivityCheck.java +++ b/core/src/main/java/bisq/core/trade/statistics/AssetTradeActivityCheck.java @@ -18,6 +18,7 @@ package bisq.core.trade.statistics; import bisq.core.dao.governance.asset.AssetService; +import bisq.core.filter.FilterManager; import bisq.core.locale.CryptoCurrency; import bisq.core.locale.CurrencyUtil; @@ -52,11 +53,13 @@ public class AssetTradeActivityCheck { private final AssetService assetService; private final TradeStatisticsManager tradeStatisticsManager; + private final FilterManager filterManager; @Inject - public AssetTradeActivityCheck(AssetService assetService, TradeStatisticsManager tradeStatisticsManager) { + public AssetTradeActivityCheck(AssetService assetService, TradeStatisticsManager tradeStatisticsManager, FilterManager filterManager) { this.assetService = assetService; this.tradeStatisticsManager = tradeStatisticsManager; + this.filterManager = filterManager; } public void onAllServicesInitialized() { @@ -80,7 +83,7 @@ public void onAllServicesInitialized() { StringBuilder sufficientlyTraded = new StringBuilder("\nSufficiently traded assets:"); StringBuilder insufficientlyTraded = new StringBuilder("\nInsufficiently traded assets:"); StringBuilder notTraded = new StringBuilder("\nNot traded assets:"); - List whiteListedSortedCryptoCurrencies = CurrencyUtil.getActiveSortedCryptoCurrencies(assetService); + List whiteListedSortedCryptoCurrencies = CurrencyUtil.getActiveSortedCryptoCurrencies(assetService, filterManager); Set assetsToRemove = new HashSet<>(whiteListedSortedCryptoCurrencies); whiteListedSortedCryptoCurrencies.forEach(e -> { String code = e.getCode(); diff --git a/desktop/src/main/java/bisq/desktop/components/paymentmethods/CryptoCurrencyForm.java b/desktop/src/main/java/bisq/desktop/components/paymentmethods/CryptoCurrencyForm.java index a0dd1c54738..5b962b5faf2 100644 --- a/desktop/src/main/java/bisq/desktop/components/paymentmethods/CryptoCurrencyForm.java +++ b/desktop/src/main/java/bisq/desktop/components/paymentmethods/CryptoCurrencyForm.java @@ -22,6 +22,7 @@ import bisq.desktop.util.Layout; import bisq.core.dao.governance.asset.AssetService; +import bisq.core.filter.FilterManager; import bisq.core.locale.CurrencyUtil; import bisq.core.locale.Res; import bisq.core.locale.TradeCurrency; @@ -58,6 +59,7 @@ public class CryptoCurrencyForm extends PaymentMethodForm { private final CryptoCurrencyAccount cryptoCurrencyAccount; private final AltCoinAddressValidator altCoinAddressValidator; private final AssetService assetService; + private final FilterManager filterManager; private InputTextField addressInputTextField; @@ -77,11 +79,13 @@ public CryptoCurrencyForm(PaymentAccount paymentAccount, GridPane gridPane, int gridRow, BSFormatter formatter, - AssetService assetService) { + AssetService assetService, + FilterManager filterManager) { super(paymentAccount, accountAgeWitnessService, inputValidator, gridPane, gridRow, formatter); this.cryptoCurrencyAccount = (CryptoCurrencyAccount) paymentAccount; this.altCoinAddressValidator = altCoinAddressValidator; this.assetService = assetService; + this.filterManager = filterManager; } @Override @@ -163,7 +167,7 @@ protected void addTradeCurrencyComboBox() { currencyComboBox.setPromptText(""); }); - currencyComboBox.setItems(FXCollections.observableArrayList(CurrencyUtil.getActiveSortedCryptoCurrencies(assetService))); + currencyComboBox.setItems(FXCollections.observableArrayList(CurrencyUtil.getActiveSortedCryptoCurrencies(assetService, filterManager))); currencyComboBox.setVisibleRowCount(Math.min(currencyComboBox.getItems().size(), 15)); currencyComboBox.setConverter(new StringConverter() { @Override diff --git a/desktop/src/main/java/bisq/desktop/main/account/content/altcoinaccounts/AltCoinAccountsView.java b/desktop/src/main/java/bisq/desktop/main/account/content/altcoinaccounts/AltCoinAccountsView.java index 5126cbe1a88..3ee09bc8c13 100644 --- a/desktop/src/main/java/bisq/desktop/main/account/content/altcoinaccounts/AltCoinAccountsView.java +++ b/desktop/src/main/java/bisq/desktop/main/account/content/altcoinaccounts/AltCoinAccountsView.java @@ -27,6 +27,7 @@ import bisq.desktop.util.Layout; import bisq.core.dao.governance.asset.AssetService; +import bisq.core.filter.FilterManager; import bisq.core.locale.CryptoCurrency; import bisq.core.locale.Res; import bisq.core.locale.TradeCurrency; @@ -65,6 +66,7 @@ public class AltCoinAccountsView extends PaymentAccountsView call(ListView list) { final ImageView icon = ImageUtil.getImageViewById(ImageUtil.REMOVE_ICON); final Button removeButton = new AutoTooltipButton("", icon); final AnchorPane pane = new AnchorPane(label, removeButton); + { label.setLayoutY(5); removeButton.setId("icon-button");