diff --git a/src/main/java/io/bitsquare/gui/main/funds/withdrawal/WithdrawalViewCB.java b/src/main/java/io/bitsquare/gui/main/funds/withdrawal/WithdrawalViewCB.java index 1b07e06d68..ae972f2978 100644 --- a/src/main/java/io/bitsquare/gui/main/funds/withdrawal/WithdrawalViewCB.java +++ b/src/main/java/io/bitsquare/gui/main/funds/withdrawal/WithdrawalViewCB.java @@ -21,6 +21,7 @@ import io.bitsquare.btc.AddressEntry; import io.bitsquare.btc.FeePolicy; import io.bitsquare.btc.Restrictions; import io.bitsquare.btc.WalletFacade; +import io.bitsquare.btc.listeners.BalanceListener; import io.bitsquare.gui.CachedViewCB; import io.bitsquare.gui.components.Popups; import io.bitsquare.gui.util.BSFormatter; @@ -101,14 +102,6 @@ public class WithdrawalViewCB extends CachedViewCB { super.initialize(url, rb); } - @Override - public void deactivate() { - super.deactivate(); - - for (WithdrawalListItem anAddressList : addressList) - anAddressList.cleanup(); - } - @Override public void activate() { super.activate(); @@ -131,6 +124,21 @@ public class WithdrawalViewCB extends CachedViewCB { fillList(); table.setItems(addressList); + + walletFacade.addBalanceListener(new BalanceListener() { + @Override + public void onBalanceChanged(Coin balance) { + fillList(); + } + }); + } + + @Override + public void deactivate() { + super.deactivate(); + + for (WithdrawalListItem item : addressList) + item.cleanup(); } @SuppressWarnings("EmptyMethod") diff --git a/src/main/java/io/bitsquare/gui/main/orders/pending/PendingTradesModel.java b/src/main/java/io/bitsquare/gui/main/orders/pending/PendingTradesModel.java index c9d021345a..e2c186500a 100644 --- a/src/main/java/io/bitsquare/gui/main/orders/pending/PendingTradesModel.java +++ b/src/main/java/io/bitsquare/gui/main/orders/pending/PendingTradesModel.java @@ -230,7 +230,6 @@ class PendingTradesModel extends UIModel { AddressEntry addressEntry = walletFacade.getAddressInfoByTradeID(getTrade().getId()); String fromAddress = addressEntry.getAddressString(); - try { walletFacade.sendFunds(fromAddress, toAddress, getAmountToWithdraw(), callback); } catch (AddressFormatException e) { @@ -308,8 +307,15 @@ class PendingTradesModel extends UIModel { } Coin getAmountToWithdraw() { - AddressEntry addressEntry = walletFacade.getAddressInfoByTradeID(getTrade().getId()); + /* + AddressEntry addressEntry = walletFacade.getAddressInfoByTradeID(getTrade().getId()); return walletFacade.getBalanceForAddress(addressEntry.getAddress()); + */ + // TODO handle overpaid collateral + if (isOfferer()) + return getTrade().getTradeAmount().add(getTrade().getCollateralAmount()); + else + return getTrade().getCollateralAmount(); } ///////////////////////////////////////////////////////////////////////////////////////////